[vmkit-commits] [vmkit] r85225 - in /vmkit/trunk/lib/JnJVM/Classpath: ClasspathReflect.h JavaUpcalls.cpp

Nicolas Geoffray nicolas.geoffray at lip6.fr
Tue Oct 27 03:29:07 PDT 2009


Author: geoffray
Date: Tue Oct 27 05:29:06 2009
New Revision: 85225

URL: http://llvm.org/viewvc/llvm-project?rev=85225&view=rev
Log:
Don't trace the internal thread object in VMThread.


Modified:
    vmkit/trunk/lib/JnJVM/Classpath/ClasspathReflect.h
    vmkit/trunk/lib/JnJVM/Classpath/JavaUpcalls.cpp

Modified: vmkit/trunk/lib/JnJVM/Classpath/ClasspathReflect.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathReflect.h?rev=85225&r1=85224&r2=85225&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathReflect.h (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathReflect.h Tue Oct 27 05:29:06 2009
@@ -125,6 +125,10 @@
     mvm::Thread* th = (mvm::Thread*)obj->vmdata;
     delete th;
   }
+  
+  static void staticTracer(JavaObjectVMThread* obj) {
+    mvm::Collector::markAndTrace(obj, &obj->thread);
+  }
 
 };
 

Modified: vmkit/trunk/lib/JnJVM/Classpath/JavaUpcalls.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/JavaUpcalls.cpp?rev=85225&r1=85224&r2=85225&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/JavaUpcalls.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/JavaUpcalls.cpp Tue Oct 27 05:29:06 2009
@@ -505,6 +505,10 @@
   JavaObjectVMThread::staticDestructor(obj);
 }
 
+extern "C" void nativeJavaObjectVMThreadTracer(JavaObjectVMThread* obj) {
+  JavaObjectVMThread::staticTracer(obj);
+}
+
 // Defined in Classpath/ClasspathVMClassLoader.cpp
 extern "C" ArrayObject* nativeGetBootPackages();
 
@@ -996,6 +1000,10 @@
    newField->getVirtualVT()->setNativeTracer(
       (uintptr_t)nativeJavaObjectFieldTracer,
       "nativeJavaObjectFieldTracer"); 
+   
+   newVMThread->getVirtualVT()->setNativeTracer(
+      (uintptr_t)nativeJavaObjectVMThreadTracer,
+      "nativeJavaObjectVMThreadTracer");
  
    newVMThread->getVirtualVT()->setNativeDestructor(
       (uintptr_t)nativeJavaObjectVMThreadDestructor,





More information about the vmkit-commits mailing list