[vmkit-commits] [vmkit] r200835 - Continue the simplification of Thread::get()
Gael Thomas
gael.thomas at lip6.fr
Wed Feb 5 04:43:52 PST 2014
Author: gthomas
Date: Wed Feb 5 06:43:51 2014
New Revision: 200835
URL: http://llvm.org/viewvc/llvm-project?rev=200835&view=rev
Log:
Continue the simplification of Thread::get()
Modified:
vmkit/branches/mcjit/include/vmkit/allocator.h
vmkit/branches/mcjit/include/vmkit/thread.h
vmkit/branches/mcjit/lib/j3/vm/j3codegen.cc
vmkit/branches/mcjit/lib/j3/vm/j3object.cc
vmkit/branches/mcjit/lib/vmkit/allocator.cc
vmkit/branches/mcjit/lib/vmkit/thread.cc
Modified: vmkit/branches/mcjit/include/vmkit/allocator.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/mcjit/include/vmkit/allocator.h?rev=200835&r1=200834&r2=200835&view=diff
==============================================================================
--- vmkit/branches/mcjit/include/vmkit/allocator.h (original)
+++ vmkit/branches/mcjit/include/vmkit/allocator.h Wed Feb 5 06:43:51 2014
@@ -15,8 +15,6 @@
#include <map>
#include <vector>
-#include "vmkit/config.h"
-
namespace vmkit {
class BumpAllocatorNode { /* always the first bytes of a bucket */
public:
@@ -123,7 +121,6 @@ namespace vmkit {
static pthread_mutex_t mutex;
static uintptr_t baseStack;
- static uintptr_t _magic;
static std::vector<void*>* spaces;
static std::vector<void*>* freeThreads;
@@ -138,8 +135,6 @@ namespace vmkit {
static void* stackAddr(void* thread);
static size_t stackSize(void* thread);
-
- static uintptr_t magic() { return -VMKIT_STACK_SIZE; }
};
} // end namespace vmkit
Modified: vmkit/branches/mcjit/include/vmkit/thread.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/mcjit/include/vmkit/thread.h?rev=200835&r1=200834&r2=200835&view=diff
==============================================================================
--- vmkit/branches/mcjit/include/vmkit/thread.h (original)
+++ vmkit/branches/mcjit/include/vmkit/thread.h Wed Feb 5 06:43:51 2014
@@ -34,8 +34,8 @@ namespace vmkit {
VMKit* vm() { return _vm; }
static uintptr_t getThreadMask();
- static Thread* get(void* ptr);
- static Thread* get();
+ static Thread* get(void* ptr);
+ static Thread* get();
bool registerSignal(int n, sa_action_t handler);
Modified: vmkit/branches/mcjit/lib/j3/vm/j3codegen.cc
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/mcjit/lib/j3/vm/j3codegen.cc?rev=200835&r1=200834&r2=200835&view=diff
==============================================================================
--- vmkit/branches/mcjit/lib/j3/vm/j3codegen.cc (original)
+++ vmkit/branches/mcjit/lib/j3/vm/j3codegen.cc Wed Feb 5 06:43:51 2014
@@ -231,7 +231,7 @@ llvm::Value* J3CodeGen::typeDescriptor(J
llvm::Value* J3CodeGen::spToCurrentThread(llvm::Value* sp) {
return builder.CreateIntToPtr(builder.CreateAnd(builder.CreatePtrToInt(sp, uintPtrTy),
- llvm::ConstantInt::get(uintPtrTy, vmkit::Thread::getThreadMask())),
+ llvm::ConstantInt::get(uintPtrTy, vmkit::Thread::getThreadMask())),
vm->typeJ3Thread);
}
Modified: vmkit/branches/mcjit/lib/j3/vm/j3object.cc
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/mcjit/lib/j3/vm/j3object.cc?rev=200835&r1=200834&r2=200835&view=diff
==============================================================================
--- vmkit/branches/mcjit/lib/j3/vm/j3object.cc (original)
+++ vmkit/branches/mcjit/lib/j3/vm/j3object.cc Wed Feb 5 06:43:51 2014
@@ -368,7 +368,7 @@ bool J3Object::isLockOwner() {
if(isInflated(header)) /* inflated */
return asMonitor(header)->isOwner(self);
else
- return !isUnlocked(header) && (J3Thread*)(header & J3Thread::getThreadMask()) == self;
+ return !isUnlocked(header) && (J3Thread*)J3Thread::get((void*)header) == self;
}
/*
Modified: vmkit/branches/mcjit/lib/vmkit/allocator.cc
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/mcjit/lib/vmkit/allocator.cc?rev=200835&r1=200834&r2=200835&view=diff
==============================================================================
--- vmkit/branches/mcjit/lib/vmkit/allocator.cc (original)
+++ vmkit/branches/mcjit/lib/vmkit/allocator.cc Wed Feb 5 06:43:51 2014
@@ -1,6 +1,7 @@
#include "vmkit/allocator.h"
#include "vmkit/thread.h"
#include "vmkit/vmkit.h"
+#include "vmkit/config.h"
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
@@ -10,7 +11,6 @@ using namespace vmkit;
pthread_mutex_t ThreadAllocator::mutex;
uintptr_t ThreadAllocator::baseStack = 0;
-uintptr_t ThreadAllocator::_magic = 0;
std::vector<void*>* ThreadAllocator::spaces = 0;
std::vector<void*>* ThreadAllocator::freeThreads = 0;
@@ -105,8 +105,6 @@ void ThreadAllocator::initialize(uintptr
minThreadStruct = ((minThreadStruct - 1) & -PAGE_SIZE) + PAGE_SIZE;
baseStack = minThreadStruct + PAGE_SIZE;
-
- _magic = -VMKIT_STACK_SIZE;
}
void* ThreadAllocator::allocate() {
Modified: vmkit/branches/mcjit/lib/vmkit/thread.cc
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/mcjit/lib/vmkit/thread.cc?rev=200835&r1=200834&r2=200835&view=diff
==============================================================================
--- vmkit/branches/mcjit/lib/vmkit/thread.cc (original)
+++ vmkit/branches/mcjit/lib/vmkit/thread.cc Wed Feb 5 06:43:51 2014
@@ -1,6 +1,7 @@
#include "vmkit/thread.h"
#include "vmkit/system.h"
#include "vmkit/vmkit.h"
+#include "vmkit/config.h"
using namespace vmkit;
@@ -31,7 +32,7 @@ Thread* Thread::get(void* ptr) {
}
uintptr_t Thread::getThreadMask() {
- return ThreadAllocator::magic();
+ return -VMKIT_STACK_SIZE;
}
void Thread::registerSignalInternal(int n, sa_action_t handler, bool altStack) {
More information about the vmkit-commits
mailing list