[vmkit-commits] [vmkit] r120021 - in /vmkit/branches/multi-vm/lib/J3: Classpath/ClasspathVMThread.inc Compiler/JavaAOTCompiler.cpp VMCore/JavaThread.h

Gael Thomas gael.thomas at lip6.fr
Tue Nov 23 05:27:42 PST 2010


Author: gthomas
Date: Tue Nov 23 07:27:42 2010
New Revision: 120021

URL: http://llvm.org/viewvc/llvm-project?rev=120021&view=rev
Log:
split the JavaThread and the mvm::Thread (in progress) - 3

Modified:
    vmkit/branches/multi-vm/lib/J3/Classpath/ClasspathVMThread.inc
    vmkit/branches/multi-vm/lib/J3/Compiler/JavaAOTCompiler.cpp
    vmkit/branches/multi-vm/lib/J3/VMCore/JavaThread.h

Modified: vmkit/branches/multi-vm/lib/J3/Classpath/ClasspathVMThread.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/lib/J3/Classpath/ClasspathVMThread.inc?rev=120021&r1=120020&r2=120021&view=diff
==============================================================================
--- vmkit/branches/multi-vm/lib/J3/Classpath/ClasspathVMThread.inc (original)
+++ vmkit/branches/multi-vm/lib/J3/Classpath/ClasspathVMThread.inc Tue Nov 23 07:27:42 2010
@@ -111,7 +111,7 @@
   while (field->getInstanceObjectField(vmthread) == 0)
     mvm::Thread::yield();
   
-  JavaThread* th = (JavaThread*)field->getInstanceObjectField(vmthread);
+  JavaThread*  th = (JavaThread*)field->getInstanceObjectField(vmthread);
   th->interruptFlag = 1;
   JavaLock* lock = th->waitsOn;
 
@@ -124,7 +124,7 @@
     uint32 locked = 0;
     while (true) {
       locked = (lock->tryAcquire() == 0);
-      if (locked || (lock->getOwner() != th && lock->getOwner() != 0))
+      if (locked || (lock->getOwner() != th->mut && lock->getOwner() != 0))
         break;
       else mvm::Thread::yield();
     }

Modified: vmkit/branches/multi-vm/lib/J3/Compiler/JavaAOTCompiler.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/lib/J3/Compiler/JavaAOTCompiler.cpp?rev=120021&r1=120020&r2=120021&view=diff
==============================================================================
--- vmkit/branches/multi-vm/lib/J3/Compiler/JavaAOTCompiler.cpp (original)
+++ vmkit/branches/multi-vm/lib/J3/Compiler/JavaAOTCompiler.cpp Tue Nov 23 07:27:42 2010
@@ -1988,7 +1988,7 @@
            e = classes.end(); i != e; ++i) {
         Class* cl = *i;
         cl->resolveClass();
-        cl->setOwnerClass(JavaThread::get());
+        cl->setOwnerClass(mvm::Thread::get());
         
         for (uint32 i = 0; i < cl->nbVirtualMethods; ++i) {
           LLVMMethodInfo* LMI = M->getMethodInfo(&cl->virtualMethods[i]);
@@ -2047,7 +2047,7 @@
       for (std::vector<Class*>::iterator i = classes.begin(), e = classes.end();
            i != e; ++i) {
         Class* cl = *i;
-        cl->setOwnerClass(JavaThread::get());
+        cl->setOwnerClass(mvm::Thread::get());
       }
       
       for (std::vector<Class*>::iterator i = classes.begin(), e = classes.end();
@@ -2075,10 +2075,10 @@
         bootstrapLoader->setCompiler(M);
       }
       
-      cl->setOwnerClass(JavaThread::get());
+      cl->setOwnerClass(mvm::Thread::get());
       cl->resolveInnerOuterClasses();
       for (uint32 i = 0; i < cl->nbInnerClasses; ++i) {
-        cl->innerClasses[i]->setOwnerClass(JavaThread::get());
+        cl->innerClasses[i]->setOwnerClass(mvm::Thread::get());
         M->compileClass(cl->innerClasses[i]);
       }
       M->compileClass(cl);

Modified: vmkit/branches/multi-vm/lib/J3/VMCore/JavaThread.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/lib/J3/VMCore/JavaThread.h?rev=120021&r1=120020&r2=120021&view=diff
==============================================================================
--- vmkit/branches/multi-vm/lib/J3/VMCore/JavaThread.h (original)
+++ vmkit/branches/multi-vm/lib/J3/VMCore/JavaThread.h Tue Nov 23 07:27:42 2010
@@ -65,7 +65,7 @@
 /// It maintains thread-specific information such as its state, the current
 /// exception if there is one, the layout of the stack, etc.
 ///
-class JavaThread : public mvm::MutatorThread {
+class JavaThread : private mvm::MutatorThread {
 public:
   
   /// jniEnv - The JNI environment of the thread.





More information about the vmkit-commits mailing list