mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-11-19 17:37:24 +00:00
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
This commit is contained in:
parent
c0649ac931
commit
cbe92e6d4a
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user