summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoman Divacky <rdivacky@freebsd.org>2014-11-21 19:53:24 +0000
committerRoman Divacky <rdivacky@freebsd.org>2014-11-21 19:53:24 +0000
commitd2b9a1b890b47d79d158a08ece2f39840b890d0e (patch)
tree83cfc77a5d538cf7a760fe3687ab1607d1a20658
parentbfd2b829d912ecd89f73ae32d4c683856dd677a3 (diff)
downloadbcm5719-llvm-d2b9a1b890b47d79d158a08ece2f39840b890d0e.tar.gz
bcm5719-llvm-d2b9a1b890b47d79d158a08ece2f39840b890d0e.zip
Disable header duplication at -Oz in loop-rotate pass.
llvm-svn: 222562
-rw-r--r--llvm/lib/Transforms/IPO/PassManagerBuilder.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp b/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
index da85a91c78a..0414caa61fc 100644
--- a/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
+++ b/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
@@ -228,7 +228,8 @@ void PassManagerBuilder::populateModulePassManager(PassManagerBase &MPM) {
MPM.add(createTailCallEliminationPass()); // Eliminate tail calls
MPM.add(createCFGSimplificationPass()); // Merge & remove BBs
MPM.add(createReassociatePass()); // Reassociate expressions
- MPM.add(createLoopRotatePass()); // Rotate Loop
+ // Rotate Loop - disable header duplication at -Oz
+ MPM.add(createLoopRotatePass(SizeLevel == 2 ? 0 : -1));
MPM.add(createLICMPass()); // Hoist loop invariants
MPM.add(createLoopUnswitchPass(SizeLevel || OptLevel < 3));
MPM.add(createInstructionCombiningPass());
OpenPOWER on IntegriCloud