[vmkit-commits] [vmkit] r143128 - in /vmkit/trunk/lib/J3: ClassLib/GNUClasspath/JavaUpcalls.cpp ClassLib/GNUClasspath/JavaUpcalls.h ClassLib/OpenJDK/JavaUpcalls.cpp ClassLib/OpenJDK/JavaUpcalls.h VMCore/Jnjvm.cpp

Will Dietz wdietz2 at illinois.edu
Thu Oct 27 12:16:59 PDT 2011


Author: wdietz2
Date: Thu Oct 27 14:16:59 2011
New Revision: 143128

URL: http://llvm.org/viewvc/llvm-project?rev=143128&view=rev
Log:
Move runtime-specific Jnjvm initialization to new JavaUpcalls method.

Modified:
    vmkit/trunk/lib/J3/ClassLib/GNUClasspath/JavaUpcalls.cpp
    vmkit/trunk/lib/J3/ClassLib/GNUClasspath/JavaUpcalls.h
    vmkit/trunk/lib/J3/ClassLib/OpenJDK/JavaUpcalls.cpp
    vmkit/trunk/lib/J3/ClassLib/OpenJDK/JavaUpcalls.h
    vmkit/trunk/lib/J3/VMCore/Jnjvm.cpp

Modified: vmkit/trunk/lib/J3/ClassLib/GNUClasspath/JavaUpcalls.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/ClassLib/GNUClasspath/JavaUpcalls.cpp?rev=143128&r1=143127&r2=143128&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/ClassLib/GNUClasspath/JavaUpcalls.cpp (original)
+++ vmkit/trunk/lib/J3/ClassLib/GNUClasspath/JavaUpcalls.cpp Thu Oct 27 14:16:59 2011
@@ -1061,6 +1061,16 @@
   initPhantomReference->setNative();
 }
 
+void Classpath::InitializeSystem(Jnjvm * jvm) {
+#define LOAD_CLASS(cl) \
+  cl->resolveClass(); \
+  cl->initialiseClass(jvm);
+  LOAD_CLASS(newVMThread);
+  LOAD_CLASS(newVMThrowable);
+#undef LOAD_CLASS
+
+}
+
 #include "ClasspathConstructor.inc"
 #include "Classpath.inc"
 #include "ClasspathField.inc"

Modified: vmkit/trunk/lib/J3/ClassLib/GNUClasspath/JavaUpcalls.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/ClassLib/GNUClasspath/JavaUpcalls.h?rev=143128&r1=143127&r2=143128&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/ClassLib/GNUClasspath/JavaUpcalls.h (original)
+++ vmkit/trunk/lib/J3/ClassLib/GNUClasspath/JavaUpcalls.h Thu Oct 27 14:16:59 2011
@@ -275,6 +275,7 @@
 
 public:
   ISOLATE_STATIC void InitializeThreading(Jnjvm* vm);
+  ISOLATE_STATIC void InitializeSystem(Jnjvm* vm);
 };
 
 

Modified: vmkit/trunk/lib/J3/ClassLib/OpenJDK/JavaUpcalls.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/ClassLib/OpenJDK/JavaUpcalls.cpp?rev=143128&r1=143127&r2=143128&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/ClassLib/OpenJDK/JavaUpcalls.cpp (original)
+++ vmkit/trunk/lib/J3/ClassLib/OpenJDK/JavaUpcalls.cpp Thu Oct 27 14:16:59 2011
@@ -1069,6 +1069,11 @@
   initPhantomReference->setNative();
 }
 
+void Classpath::InitializeSystem(Jnjvm * jvm) {
+  // TODO: Implement me!
+}
+
+
 #include "ClasspathConstructor.inc"
 #include "Classpath.inc"
 #include "ClasspathField.inc"

Modified: vmkit/trunk/lib/J3/ClassLib/OpenJDK/JavaUpcalls.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/ClassLib/OpenJDK/JavaUpcalls.h?rev=143128&r1=143127&r2=143128&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/ClassLib/OpenJDK/JavaUpcalls.h (original)
+++ vmkit/trunk/lib/J3/ClassLib/OpenJDK/JavaUpcalls.h Thu Oct 27 14:16:59 2011
@@ -275,6 +275,7 @@
 
 public:
   ISOLATE_STATIC void InitializeThreading(Jnjvm* vm);
+  ISOLATE_STATIC void InitializeSystem(Jnjvm* vm);
 };
 
 

Modified: vmkit/trunk/lib/J3/VMCore/Jnjvm.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/VMCore/Jnjvm.cpp?rev=143128&r1=143127&r2=143128&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/VMCore/Jnjvm.cpp (original)
+++ vmkit/trunk/lib/J3/VMCore/Jnjvm.cpp Thu Oct 27 14:16:59 2011
@@ -1105,9 +1105,7 @@
   LOAD_CLASS(upcalls->newConstructor);
   LOAD_CLASS(upcalls->newField);
   LOAD_CLASS(upcalls->newMethod);
-  LOAD_CLASS(upcalls->newVMThread);
   LOAD_CLASS(upcalls->newStackTraceElement);
-  LOAD_CLASS(upcalls->newVMThrowable);
   LOAD_CLASS(upcalls->boolClass);
   LOAD_CLASS(upcalls->byteClass);
   LOAD_CLASS(upcalls->charClass);
@@ -1151,6 +1149,9 @@
   LOAD_CLASS(upcalls->SystemClass);
 #undef LOAD_CLASS
 
+  // Implementation-specific end-of-bootstrap initialization
+  upcalls->InitializeSystem(this);
+
   loadAppClassLoader();
   obj = JavaThread::get()->currentThread();
   javaLoader = appClassLoader->getJavaClassLoader();





More information about the vmkit-commits mailing list