summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/Passes.cpp
diff options
context:
space:
mode:
authorAndrew Trick <atrick@apple.com>2012-02-15 05:13:47 +0000
committerAndrew Trick <atrick@apple.com>2012-02-15 05:13:47 +0000
commitd83284c19680927af836af5e7fc71469ef7ec596 (patch)
tree1fe76316ce8aebc401b4552a09dcd4470aa90ef0 /llvm/lib/CodeGen/Passes.cpp
parent1b384668e3424f0aa79a6ec8dbdb48ae3b31e89a (diff)
downloadbcm5719-llvm-d83284c19680927af836af5e7fc71469ef7ec596.tar.gz
bcm5719-llvm-d83284c19680927af836af5e7fc71469ef7ec596.zip
Move PostRAMachineLICM into MachineLateOptimization. It now runs after PEI!
llvm-svn: 150565
Diffstat (limited to 'llvm/lib/CodeGen/Passes.cpp')
-rw-r--r--llvm/lib/CodeGen/Passes.cpp14
1 files changed, 6 insertions, 8 deletions
diff --git a/llvm/lib/CodeGen/Passes.cpp b/llvm/lib/CodeGen/Passes.cpp
index ec1f2b4c3b2..977ecaa7ece 100644
--- a/llvm/lib/CodeGen/Passes.cpp
+++ b/llvm/lib/CodeGen/Passes.cpp
@@ -582,14 +582,8 @@ void TargetPassConfig::addOptimizedRegAlloc(FunctionPass *RegAllocPass) {
//
// FIXME: Re-enable coloring with register when it's capable of adding
// kill markers.
- addPass(StackSlotColoringID);
-
- // Run post-ra machine LICM to hoist reloads / remats.
- //
- // FIXME: can this move into MachineLateOptimization?
- addPass(PostRAMachineLICMID);
-
- printAndVerify("After StackSlotColoring and postra Machine LICM");
+ if (addPass(StackSlotColoringID) != &NoPaddID)
+ printAndVerify("After StackSlotColoring");
}
//===---------------------------------------------------------------------===//
@@ -598,6 +592,10 @@ void TargetPassConfig::addOptimizedRegAlloc(FunctionPass *RegAllocPass) {
/// Add passes that optimize machine instructions after register allocation.
void TargetPassConfig::addMachineLateOptimization() {
+ // Run post-ra machine LICM to hoist reloads / remats.
+ if (addPass(PostRAMachineLICMID) != &NoPassID)
+ printAndVerify("After postra Machine LICM");
+
// Branch folding must be run after regalloc and prolog/epilog insertion.
if (addPass(BranchFolderPassID) != &NoPassID)
printNoVerify("After BranchFolding");
OpenPOWER on IntegriCloud