diff options
author | Chris Lattner <sabre@nondot.org> | 2003-06-22 20:11:45 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2003-06-22 20:11:45 +0000 |
commit | e643a6cb9a5b15e3b6e914a84ec94f37879c5b9d (patch) | |
tree | 2982d3f96a6c5ab9a163134b1591c13d076d7263 /tools/gccas | |
parent | 1ee7855dfa0e122e8b714be3fbd78364ee47bec2 (diff) | |
download | external_llvm-e643a6cb9a5b15e3b6e914a84ec94f37879c5b9d.zip external_llvm-e643a6cb9a5b15e3b6e914a84ec94f37879c5b9d.tar.gz external_llvm-e643a6cb9a5b15e3b6e914a84ec94f37879c5b9d.tar.bz2 |
Add tail duplication pass to the pipeline, move the verifier pass to the front
Other minor reorganizations
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6849 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/gccas')
-rw-r--r-- | tools/gccas/gccas.cpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/tools/gccas/gccas.cpp b/tools/gccas/gccas.cpp index ae42b71..19182a9 100644 --- a/tools/gccas/gccas.cpp +++ b/tools/gccas/gccas.cpp @@ -60,18 +60,16 @@ static inline void addPass(PassManager &PM, Pass *P) { void AddConfiguredTransformationPasses(PassManager &PM) { - if (Verify) PM.add(createVerifierPass()); - + PM.add(createVerifierPass()); // Verify that input is correct addPass(PM, createFunctionResolvingPass()); // Resolve (...) functions addPass(PM, createGlobalDCEPass()); // Kill unused uinit g-vars addPass(PM, createDeadTypeEliminationPass()); // Eliminate dead types addPass(PM, createConstantMergePass()); // Merge dup global constants - addPass(PM, createCFGSimplificationPass()); // Merge & remove BBs - addPass(PM, createVerifierPass()); // Verify that input is correct - addPass(PM, createDeadInstEliminationPass()); // Remove Dead code/vars addPass(PM, createRaiseAllocationsPass()); // call %malloc -> malloc inst addPass(PM, createInstructionCombiningPass()); // Cleanup code for raise addPass(PM, createRaisePointerReferencesPass());// Recover type information + addPass(PM, createTailDuplicationPass()); // Simplify cfg by copying code + addPass(PM, createCFGSimplificationPass()); // Merge & remove BBs addPass(PM, createInstructionCombiningPass()); // Combine silly seq's addPass(PM, createScalarReplAggregatesPass()); // Break up aggregate allocas addPass(PM, createPromoteMemoryToRegister()); // Promote alloca's to regs @@ -88,7 +86,7 @@ void AddConfiguredTransformationPasses(PassManager &PM) { // Run instcombine after redundancy elimination to exploit opportunities // opened up by them. addPass(PM, createInstructionCombiningPass()); - addPass(PM, createAggressiveDCEPass()); // SSA based 'Agressive DCE' + addPass(PM, createAggressiveDCEPass()); // SSA based 'Aggressive DCE' addPass(PM, createCFGSimplificationPass()); // Merge & remove BBs } |