[vmkit-commits] [vmkit] r57439 - in /vmkit/trunk: include/mvm/JIT.h lib/Mvm/Runtime/JIT.cpp tools/vmkit/Launcher.cpp

Nicolas Geoffray nicolas.geoffray at lip6.fr
Mon Oct 13 06:06:21 PDT 2008


Author: geoffray
Date: Mon Oct 13 08:06:21 2008
New Revision: 57439

URL: http://llvm.org/viewvc/llvm-project?rev=57439&view=rev
Log:
Add support for the -fast option.


Modified:
    vmkit/trunk/include/mvm/JIT.h
    vmkit/trunk/lib/Mvm/Runtime/JIT.cpp
    vmkit/trunk/tools/vmkit/Launcher.cpp

Modified: vmkit/trunk/include/mvm/JIT.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/mvm/JIT.h?rev=57439&r1=57438&r2=57439&view=diff

==============================================================================
--- vmkit/trunk/include/mvm/JIT.h (original)
+++ vmkit/trunk/include/mvm/JIT.h Mon Oct 13 08:06:21 2008
@@ -117,7 +117,7 @@
   static uint64 getTypeSize(const llvm::Type* type);
   static void AddStandardCompilePasses(llvm::FunctionPassManager*);
   static void runPasses(llvm::Function* func, llvm::FunctionPassManager*);
-  static void initialise();
+  static void initialise(bool Fast = false);
 
   static llvm::ConstantInt* constantInt8Zero;
   static llvm::ConstantInt* constantZero;

Modified: vmkit/trunk/lib/Mvm/Runtime/JIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Runtime/JIT.cpp?rev=57439&r1=57438&r2=57439&view=diff

==============================================================================
--- vmkit/trunk/lib/Mvm/Runtime/JIT.cpp (original)
+++ vmkit/trunk/lib/Mvm/Runtime/JIT.cpp Mon Oct 13 08:06:21 2008
@@ -53,7 +53,7 @@
   }
 }
 
-void MvmModule::initialise() {
+void MvmModule::initialise(bool Fast) {
   llvm::NoFramePointerElim = true;
   llvm::ExceptionHandling = true;
   globalModule = new llvm::Module("bootstrap module");
@@ -61,7 +61,7 @@
   memoryManager = new MvmMemoryManager();
   
   executionEngine = ExecutionEngine::createJIT(globalModuleProvider, 0,
-                                               memoryManager);
+                                               memoryManager, Fast);
   Module module("unused");
   mvm::llvm_runtime::makeLLVMModuleContents(&module);
   

Modified: vmkit/trunk/tools/vmkit/Launcher.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tools/vmkit/Launcher.cpp?rev=57439&r1=57438&r2=57439&view=diff

==============================================================================
--- vmkit/trunk/tools/vmkit/Launcher.cpp (original)
+++ vmkit/trunk/tools/vmkit/Launcher.cpp Mon Oct 13 08:06:21 2008
@@ -32,6 +32,11 @@
     clEnumValN(RunNet, "net", "Run the CLI VM"),
    clEnumValEnd));
 
+static llvm::cl::opt<bool> Fast("fast", 
+                     cl::desc("Generate code quickly, "
+                              "potentially sacrificing code quality"),
+                     cl::init(false));
+
 int found(char** argv, int argc, const char* name) {
   int i = 1;
   for (; i < argc; i++) {
@@ -43,12 +48,7 @@
 int main(int argc, char** argv) {
   llvm::llvm_shutdown_obj X;
   int base;
-   
-  mvm::MvmModule::initialise();
-  mvm::Object::initialise();
-  mvm::Thread::initialise();
-  Collector::initialise(0, &base);
-  Collector::enable(0);
+  
   int pos = found(argv, argc, "-java");
   if (pos) {
     llvm::cl::ParseCommandLineOptions(pos, argv);
@@ -61,6 +61,12 @@
     }
   }
   
+  mvm::MvmModule::initialise(Fast);
+  mvm::Object::initialise();
+  mvm::Thread::initialise();
+  Collector::initialise(0, &base);
+  Collector::enable(0);
+  
   if (VMToRun == RunJava) {
 #if WITH_JNJVM
     mvm::VirtualMachine::initialiseJVM();





More information about the vmkit-commits mailing list