[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