[vmkit-commits] [vmkit] r58333 - in /vmkit/trunk/lib/JnJVM/VMCore: JnjvmClassLoader.cpp JnjvmModule.cpp JnjvmModule.h
    Nicolas Geoffray 
    nicolas.geoffray at lip6.fr
       
    Tue Oct 28 10:15:43 PDT 2008
    
    
  
Author: geoffray
Date: Tue Oct 28 12:15:43 2008
New Revision: 58333
URL: http://llvm.org/viewvc/llvm-project?rev=58333&view=rev
Log:
The initial module is the bootstrap loader.
Modified:
    vmkit/trunk/lib/JnJVM/VMCore/JnjvmClassLoader.cpp
    vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp
    vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.h
Modified: vmkit/trunk/lib/JnJVM/VMCore/JnjvmClassLoader.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JnjvmClassLoader.cpp?rev=58333&r1=58332&r2=58333&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JnjvmClassLoader.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JnjvmClassLoader.cpp Tue Oct 28 12:15:43 2008
@@ -42,7 +42,6 @@
 
 JnjvmBootstrapLoader::JnjvmBootstrapLoader(bool staticCompilation) {
   
-  JnjvmModule::initialise(); 
   TheModule = new JnjvmModule("Bootstrap JnJVM");
   TheModuleProvider = new JnjvmModuleProvider(getModule());
   getModule()->setIsStaticCompiling(staticCompilation);
Modified: vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp?rev=58333&r1=58332&r2=58333&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.cpp Tue Oct 28 12:15:43 2008
@@ -909,9 +909,9 @@
 Module* JnjvmModule::initialModule;
 
 void JnjvmModule::initialise() {
-  initialModule = new Module("Initial jnjvm module");
-  jnjvm::llvm_runtime::makeLLVMModuleContents(initialModule);
-  Module* module = initialModule;
+  jnjvm::llvm_runtime::makeLLVMModuleContents(this);
+  Module* module = this;
+  initialModule = this;
 
   VTType = module->getTypeByName("VT");
 
@@ -1002,6 +1002,7 @@
     mvm::MvmModule::executionEngine->getTargetData()->getStringRepresentation();
   setDataLayout(str);
   staticCompilation = sc;
+  if (!VTType) initialise();
 
   Module* module = initialModule;
    
Modified: vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.h?rev=58333&r1=58332&r2=58333&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.h (original)
+++ vmkit/trunk/lib/JnJVM/VMCore/JnjvmModule.h Tue Oct 28 12:15:43 2008
@@ -375,7 +375,7 @@
   static LLVMAssessorInfo& getTypedefInfo(Typedef* type);
   
   explicit JnjvmModule(const std::string &ModuleID, bool sc = false);
-  static void initialise();
+  void initialise();
 
   llvm::Value* getNativeClass(CommonClass* cl);
   llvm::Value* getJavaClass(CommonClass* cl);
    
    
More information about the vmkit-commits
mailing list