summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/LLVMTargetMachine.cpp
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2010-04-07 00:41:17 +0000
committerEvan Cheng <evan.cheng@apple.com>2010-04-07 00:41:17 +0000
commit6ea5949a93840eb1ae127e60b1423178c05878d4 (patch)
tree117dd422aee9d4887ba62a4d77135514d94473f4 /llvm/lib/CodeGen/LLVMTargetMachine.cpp
parent6ca136a77fe1a4769f458afa0c5dd663f1a531f1 (diff)
downloadbcm5719-llvm-6ea5949a93840eb1ae127e60b1423178c05878d4.tar.gz
bcm5719-llvm-6ea5949a93840eb1ae127e60b1423178c05878d4.zip
Post regalloc LICM. Work in progress.
llvm-svn: 100592
Diffstat (limited to 'llvm/lib/CodeGen/LLVMTargetMachine.cpp')
-rw-r--r--llvm/lib/CodeGen/LLVMTargetMachine.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/LLVMTargetMachine.cpp b/llvm/lib/CodeGen/LLVMTargetMachine.cpp
index ed57f4cb101..ced6664c4a3 100644
--- a/llvm/lib/CodeGen/LLVMTargetMachine.cpp
+++ b/llvm/lib/CodeGen/LLVMTargetMachine.cpp
@@ -66,6 +66,9 @@ static cl::opt<bool> VerifyMachineCode("verify-machineinstrs", cl::Hidden,
cl::desc("Verify generated machine code"),
cl::init(getenv("LLVM_VERIFY_MACHINEINSTRS")!=NULL));
+static cl::opt<bool> PostRAMachineLICM("postra-machine-licm", cl::Hidden,
+ cl::desc("Enable post-regalloc Machine LICM"));
+
static cl::opt<cl::boolOrDefault>
AsmVerbose("asm-verbose", cl::desc("Add comments to directives."),
cl::init(cl::BOU_UNSET));
@@ -343,6 +346,10 @@ bool LLVMTargetMachine::addCommonCodeGenPasses(PassManagerBase &PM,
// kill markers.
PM.add(createStackSlotColoringPass(false));
printAndVerify(PM, "After StackSlotColoring");
+
+ // Run post-ra machine LICM to hoist reloads / remats.
+ if (PostRAMachineLICM)
+ PM.add(createMachineLICMPass(false));
}
// Run post-ra passes.
OpenPOWER on IntegriCloud