summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2005-09-27 00:14:41 +0000
committerChris Lattner <sabre@nondot.org>2005-09-27 00:14:41 +0000
commit54ec5f2089aebb8a1d8dbc7a0b975b2a636f0448 (patch)
tree3c37c9c7a7fd3d7fbe85d9456139cc17d84bbaff /llvm
parent4435b149a09c1210e52c9787b70daf21d004d1e4 (diff)
downloadbcm5719-llvm-54ec5f2089aebb8a1d8dbc7a0b975b2a636f0448.tar.gz
bcm5719-llvm-54ec5f2089aebb8a1d8dbc7a0b975b2a636f0448.zip
Move the post-lsr simplify cfg pass after lowereh, so it can clean up after
eh lowering as well. llvm-svn: 23459
Diffstat (limited to 'llvm')
-rw-r--r--llvm/lib/Target/PowerPC/PowerPCTargetMachine.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/llvm/lib/Target/PowerPC/PowerPCTargetMachine.cpp b/llvm/lib/Target/PowerPC/PowerPCTargetMachine.cpp
index 1acd01de31b..487f1443071 100644
--- a/llvm/lib/Target/PowerPC/PowerPCTargetMachine.cpp
+++ b/llvm/lib/Target/PowerPC/PowerPCTargetMachine.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());
OpenPOWER on IntegriCloud