diff options
author | Anton Korobeynikov <asl@math.spbu.ru> | 2012-01-22 14:08:34 +0000 |
---|---|---|
committer | Anton Korobeynikov <asl@math.spbu.ru> | 2012-01-22 14:08:34 +0000 |
commit | 0251f20ad1104465d2aaae20c75b7a1a0501a5a0 (patch) | |
tree | ed4081cc14dbf2c81ca599d2a90c2f074a55fceb /llvm/lib/CodeGen/LLVMTargetMachine.cpp | |
parent | 31194402394205ce56dc09d372fa7dabedac60c8 (diff) | |
download | llvm-0251f20ad1104465d2aaae20c75b7a1a0501a5a0.zip llvm-0251f20ad1104465d2aaae20c75b7a1a0501a5a0.tar.gz llvm-0251f20ad1104465d2aaae20c75b7a1a0501a5a0.tar.bz2 |
Add an option to disable buggy copy propagation pass
llvm-svn: 148662
Diffstat (limited to 'llvm/lib/CodeGen/LLVMTargetMachine.cpp')
-rw-r--r-- | llvm/lib/CodeGen/LLVMTargetMachine.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/LLVMTargetMachine.cpp b/llvm/lib/CodeGen/LLVMTargetMachine.cpp index a04f3ed..3a9f0f0 100644 --- a/llvm/lib/CodeGen/LLVMTargetMachine.cpp +++ b/llvm/lib/CodeGen/LLVMTargetMachine.cpp @@ -72,6 +72,8 @@ static cl::opt<bool> DisableLSR("disable-lsr", cl::Hidden, cl::desc("Disable Loop Strength Reduction Pass")); static cl::opt<bool> DisableCGP("disable-cgp", cl::Hidden, cl::desc("Disable Codegen Prepare")); +static cl::opt<bool> DisableCopyProp("disable-copyprop", cl::Hidden, + cl::desc("Disable Copy Propagation pass")); static cl::opt<bool> PrintLSR("print-lsr-output", cl::Hidden, cl::desc("Print LLVM IR produced by the loop-reduce pass")); static cl::opt<bool> PrintISelInput("print-isel-input", cl::Hidden, @@ -463,7 +465,7 @@ bool LLVMTargetMachine::addCommonCodeGenPasses(PassManagerBase &PM, } // Copy propagation. - if (getOptLevel() != CodeGenOpt::None) { + if (getOptLevel() != CodeGenOpt::None && !DisableCopyProp) { PM.add(createMachineCopyPropagationPass()); printNoVerify(PM, "After copy propagation pass"); } |