[vmkit-commits] [vmkit] r180488 - Reenable optimizations

Peter Senna Tschudin peter.senna at gmail.com
Thu Apr 25 10:17:21 PDT 2013


Author: peter.senna
Date: Thu Apr 25 12:15:51 2013
New Revision: 180488

URL: http://llvm.org/viewvc/llvm-project?rev=180488&view=rev
Log:
Reenable optimizations
(cherry picked from commit 0bef2a2f5292995a41931e28c9c457ca620615e8)

Modified:
    vmkit/trunk/lib/vmkit/Compiler/JIT.cpp

Modified: vmkit/trunk/lib/vmkit/Compiler/JIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/vmkit/Compiler/JIT.cpp?rev=180488&r1=180487&r2=180488&view=diff
==============================================================================
--- vmkit/trunk/lib/vmkit/Compiler/JIT.cpp (original)
+++ vmkit/trunk/lib/vmkit/Compiler/JIT.cpp Thu Apr 25 12:15:51 2013
@@ -115,7 +115,7 @@ void VmkitModule::initialise(int argc, c
   }
 
   const char** llvm_argv = reinterpret_cast<const char**>(
-      allocator.Allocate((count + 3) * sizeof(char**)));
+      allocator.Allocate((count + 7) * sizeof(char**)));
   int arrayIndex = 0;
   llvm_argv[arrayIndex++] = argv[0];
 
@@ -133,6 +133,11 @@ void VmkitModule::initialise(int argc, c
   }
   // Disable branch fold for accurate line numbers.
   llvm_argv[arrayIndex++] = "-disable-branch-fold";
+  llvm_argv[arrayIndex++] = "-fast-isel";
+  //llvm_argv[arrayIndex++] = "-stats";
+  //llvm_argv[arrayIndex++] = "-time-passes";
+  //llvm_argv[arrayIndex++] = "-info-output-file";
+  //llvm_argv[arrayIndex++] = "pepe.txt";
  
   cl::ParseCommandLineOptions(arrayIndex, const_cast<char**>(llvm_argv));
 }
@@ -159,26 +164,26 @@ static void AddStandardCompilePasses(Fun
    
   addPass(PM, createCFGSimplificationPass()); // Clean up disgusting code
   addPass(PM, createPromoteMemoryToRegisterPass());// Kill useless allocas
-  
+
   addPass(PM, createInstructionCombiningPass()); // Cleanup for scalarrepl.
   addPass(PM, createScalarReplAggregatesPass()); // Break up aggregate allocas
   addPass(PM, createInstructionCombiningPass()); // Cleanup for scalarrepl.
   addPass(PM, createJumpThreadingPass());        // Thread jumps.
   addPass(PM, createCFGSimplificationPass());    // Merge & remove BBs
   addPass(PM, createInstructionCombiningPass()); // Combine silly seq's
-  
+
   addPass(PM, createCFGSimplificationPass());    // Merge & remove BBs
   addPass(PM, createReassociatePass());          // Reassociate expressions
   addPass(PM, createLoopRotatePass());           // Rotate loops.
   addPass(PM, createLICMPass());                 // Hoist loop invariants
   addPass(PM, createLoopUnswitchPass());         // Unswitch loops.
-  addPass(PM, createInstructionCombiningPass()); 
+  addPass(PM, createInstructionCombiningPass());
   addPass(PM, createIndVarSimplifyPass());       // Canonicalize indvars
   addPass(PM, createLoopDeletionPass());         // Delete dead loops
   addPass(PM, createLoopUnrollPass());           // Unroll small loops*/
   addPass(PM, createInstructionCombiningPass()); // Clean up after the unroller
   addPass(PM, createGVNPass());                  // Remove redundancies
-  addPass(PM, createMemCpyOptPass());             // Remove memcpy / form memset  
+  addPass(PM, createMemCpyOptPass());             // Remove memcpy / form memset
   addPass(PM, createSCCPPass());                 // Constant prop with SCCP
 
   // Run instcombine after redundancy elimination to exploit opportunities





More information about the vmkit-commits mailing list