diff options
author | Chris Lattner <sabre@nondot.org> | 2005-09-27 00:14:41 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2005-09-27 00:14:41 +0000 |
commit | 5e8d2dc19790b2262a27a67a1900ce187d661172 (patch) | |
tree | 1cb7b2957da4a23f61df8237b5c7ac8adcaecba9 /lib/Target/PowerPC/PPCTargetMachine.cpp | |
parent | 30e21a46f00e638b2fdafb394058e1e6355f4e70 (diff) |
Move the post-lsr simplify cfg pass after lowereh, so it can clean up after
eh lowering as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23459 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/PowerPC/PPCTargetMachine.cpp')
-rw-r--r-- | lib/Target/PowerPC/PPCTargetMachine.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/Target/PowerPC/PPCTargetMachine.cpp b/lib/Target/PowerPC/PPCTargetMachine.cpp index 1acd01de31..487f144307 100644 --- a/lib/Target/PowerPC/PPCTargetMachine.cpp +++ b/lib/Target/PowerPC/PPCTargetMachine.cpp @@ -71,13 +71,15 @@ bool PowerPCTargetMachine::addPassesToEmitFile(PassManager &PM, // Run loop strength reduction before anything else. PM.add(createLoopStrengthReducePass()); - PM.add(createCFGSimplificationPass()); // FIXME: Implement efficient support for garbage collection intrinsics. PM.add(createLowerGCPass()); // FIXME: Implement the invoke/unwind instructions! PM.add(createLowerInvokePass()); + + // Clean up after other passes, e.g. merging critical edges. + PM.add(createCFGSimplificationPass()); // FIXME: Implement the switch instruction in the instruction selector! PM.add(createLowerSwitchPass()); @@ -126,7 +128,6 @@ void PowerPCJITInfo::addPassesToJITCompile(FunctionPassManager &PM) { // Run loop strength reduction before anything else. PM.add(createLoopStrengthReducePass()); - PM.add(createCFGSimplificationPass()); // FIXME: Implement efficient support for garbage collection intrinsics. PM.add(createLowerGCPass()); @@ -134,6 +135,9 @@ void PowerPCJITInfo::addPassesToJITCompile(FunctionPassManager &PM) { // FIXME: Implement the invoke/unwind instructions! PM.add(createLowerInvokePass()); + // Clean up after other passes, e.g. merging critical edges. + PM.add(createCFGSimplificationPass()); + // FIXME: Implement the switch instruction in the instruction selector! PM.add(createLowerSwitchPass()); |