The second part of the change from -fast to -O#. This changes the JIT to accept
[oota-llvm.git] / lib / ExecutionEngine / JIT / JIT.cpp
index 986ec91ede0564d24c30424f1bd073dc6c6f0b5e..93203a257cc07e3a8582b07039baf5c0a303d6d1 100644 (file)
@@ -196,8 +196,8 @@ void DarwinRegisterFrame(void* FrameBegin) {
 ExecutionEngine *ExecutionEngine::createJIT(ModuleProvider *MP,
                                             std::string *ErrorStr,
                                             JITMemoryManager *JMM,
-                                            bool Fast) {
-  ExecutionEngine *EE = JIT::createJIT(MP, ErrorStr, JMM, Fast);
+                                            unsigned OptLevel) {
+  ExecutionEngine *EE = JIT::createJIT(MP, ErrorStr, JMM, OptLevel);
   if (!EE) return 0;
   
   // Make sure we can resolve symbols in the program as well. The zero arg
@@ -207,7 +207,7 @@ ExecutionEngine *ExecutionEngine::createJIT(ModuleProvider *MP,
 }
 
 JIT::JIT(ModuleProvider *MP, TargetMachine &tm, TargetJITInfo &tji,
-         JITMemoryManager *JMM, bool Fast)
+         JITMemoryManager *JMM, unsigned OptLevel)
   : ExecutionEngine(MP), TM(tm), TJI(tji) {
   setTargetData(TM.getTargetData());
 
@@ -223,7 +223,7 @@ JIT::JIT(ModuleProvider *MP, TargetMachine &tm, TargetJITInfo &tji,
 
   // Turn the machine code intermediate representation into bytes in memory that
   // may be executed.
-  if (TM.addPassesToEmitMachineCode(PM, *MCE, Fast)) {
+  if (TM.addPassesToEmitMachineCode(PM, *MCE, OptLevel)) {
     cerr << "Target does not support machine code emission!\n";
     abort();
   }
@@ -272,7 +272,7 @@ void JIT::addModuleProvider(ModuleProvider *MP) {
 
     // Turn the machine code intermediate representation into bytes in memory
     // that may be executed.
-    if (TM.addPassesToEmitMachineCode(PM, *MCE, false /*fast*/)) {
+    if (TM.addPassesToEmitMachineCode(PM, *MCE, 3 /* OptLevel */)) {
       cerr << "Target does not support machine code emission!\n";
       abort();
     }
@@ -305,7 +305,7 @@ Module *JIT::removeModuleProvider(ModuleProvider *MP, std::string *E) {
     
     // Turn the machine code intermediate representation into bytes in memory
     // that may be executed.
-    if (TM.addPassesToEmitMachineCode(PM, *MCE, false /*fast*/)) {
+    if (TM.addPassesToEmitMachineCode(PM, *MCE, 3 /* OptLevel */)) {
       cerr << "Target does not support machine code emission!\n";
       abort();
     }
@@ -337,7 +337,7 @@ void JIT::deleteModuleProvider(ModuleProvider *MP, std::string *E) {
     
     // Turn the machine code intermediate representation into bytes in memory
     // that may be executed.
-    if (TM.addPassesToEmitMachineCode(PM, *MCE, false /*fast*/)) {
+    if (TM.addPassesToEmitMachineCode(PM, *MCE, 3 /* OptLevel */)) {
       cerr << "Target does not support machine code emission!\n";
       abort();
     }