From cbe92e6d4a1006664e678a8b9a825e8714f2a36b Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sat, 7 May 2005 22:45:35 +0000 Subject: [PATCH] Move licm after reassociate, add some cond-propagate passes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21769 91177308-0d34-0410-b5e6-96231b3b80d8 --- tools/gccas/gccas.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tools/gccas/gccas.cpp b/tools/gccas/gccas.cpp index fae4ddb205a..2791cf4df20 100644 --- a/tools/gccas/gccas.cpp +++ b/tools/gccas/gccas.cpp @@ -103,11 +103,12 @@ void AddConfiguredTransformationPasses(PassManager &PM) { addPass(PM, createCFGSimplificationPass()); // Merge & remove BBs addPass(PM, createScalarReplAggregatesPass()); // Break up aggregate allocas addPass(PM, createInstructionCombiningPass()); // Combine silly seq's + addPass(PM, createCondPropagationPass()); // Propagate conditionals addPass(PM, createTailCallEliminationPass()); // Eliminate tail calls addPass(PM, createCFGSimplificationPass()); // Merge & remove BBs - addPass(PM, createLICMPass()); // Hoist loop invariants addPass(PM, createReassociatePass()); // Reassociate expressions + addPass(PM, createLICMPass()); // Hoist loop invariants addPass(PM, createInstructionCombiningPass()); // Clean up after LICM/reassoc addPass(PM, createIndVarSimplifyPass()); // Canonicalize indvars addPass(PM, createLoopUnrollPass()); // Unroll small loops @@ -119,6 +120,8 @@ void AddConfiguredTransformationPasses(PassManager &PM) { // Run instcombine after redundancy elimination to exploit opportunities // opened up by them. addPass(PM, createInstructionCombiningPass()); + addPass(PM, createCondPropagationPass()); // Propagate conditionals + addPass(PM, createDeadStoreEliminationPass()); // Delete dead stores addPass(PM, createAggressiveDCEPass()); // SSA based 'Aggressive DCE' addPass(PM, createCFGSimplificationPass()); // Merge & remove BBs -- 2.34.1