[vmkit-commits] [vmkit] r75002 - /vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Wed Jul 8 05:18:21 PDT 2009
Author: geoffray
Date: Wed Jul 8 07:17:44 2009
New Revision: 75002
URL: http://llvm.org/viewvc/llvm-project?rev=75002&view=rev
Log:
Create finalizer and reference threads during bootstrap.
Modified:
vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp
Modified: vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp?rev=75002&r1=75001&r2=75002&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/Jnjvm.cpp Wed Jul 8 07:17:44 2009
@@ -953,6 +953,13 @@
void Jnjvm::loadBootstrap() {
JnjvmClassLoader* loader = bootstrapLoader;
+ // First create system threads.
+ finalizerThread = new JavaThread(0, 0, this);
+ finalizerThread->start((void (*)(mvm::Thread*))finalizerStart);
+
+ enqueueThread = new JavaThread(0, 0, this);
+ enqueueThread->start((void (*)(mvm::Thread*))enqueueStart);
+
// Initialise the bootstrap class loader if it's not
// done already.
if (!bootstrapLoader->upcalls->newString)
@@ -1210,13 +1217,7 @@
mvm::Thread* th = new JavaThread(0, 0, this);
th->start(serviceCPUMonitor);
#endif
-
- finalizerThread = new JavaThread(0, 0, this);
- finalizerThread->start((void (*)(mvm::Thread*))finalizerStart);
-
- enqueueThread = new JavaThread(0, 0, this);
- enqueueThread->start((void (*)(mvm::Thread*))enqueueStart);
-
+
mainThread = new JavaThread(0, 0, this);
mainThread->start((void (*)(mvm::Thread*))mainJavaStart);
} else {
More information about the vmkit-commits
mailing list