summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorYi Jiang <yjiang@apple.com>2014-05-05 23:14:46 +0000
committerYi Jiang <yjiang@apple.com>2014-05-05 23:14:46 +0000
commit79eb0aa8cbeccaea68ac3e5bf52e0ce8d2aec8d1 (patch)
tree4433076bbc973c99ee514b0de2b0eb66a04c31cb /llvm/lib
parent80f12c2349424e24adcef665f5827e142f7b6975 (diff)
downloadbcm5719-llvm-79eb0aa8cbeccaea68ac3e5bf52e0ce8d2aec8d1.tar.gz
bcm5719-llvm-79eb0aa8cbeccaea68ac3e5bf52e0ce8d2aec8d1.zip
Reapply: Add slp vectorization to LTO passes. The bug it exposed has been fixed by r207983. <radar://16641956>
llvm-svn: 208013
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Transforms/IPO/PassManagerBuilder.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp b/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
index 01ab31deca4..10c51ab553a 100644
--- a/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
+++ b/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
@@ -341,6 +341,9 @@ void PassManagerBuilder::populateLTOPassManager(PassManagerBase &PM,
PM.add(createLoopDeletionPass());
PM.add(createLoopVectorizePass(true, true));
+ // More scalar chains could be vectorized due to more alias information
+ PM.add(createSLPVectorizerPass()); // Vectorize parallel scalar chains.
+
// Cleanup and simplify the code after the scalar optimizations.
PM.add(createInstructionCombiningPass());
OpenPOWER on IntegriCloud