[SLP Vectorizer][Patch 1/2] Add slp vectorization to LTO passes
yijiang
yjiang at apple.com
Mon Apr 28 17:42:39 PDT 2014
Hi,
LTO could resolve more alias and expose more opportunities in slp vectorizer. According to the experiment, there is no noticeable regression on compile time and execution time on test suite. We observe 2.2% improvement on spec2000 eon under -O3 -lto if with the second patch in SLP Vectorizer.
Index: lib/Transforms/IPO/PassManagerBuilder.cpp
===================================================================
--- lib/Transforms/IPO/PassManagerBuilder.cpp (revision 207367)
+++ lib/Transforms/IPO/PassManagerBuilder.cpp (working copy)
@@ -341,6 +341,9 @@
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());
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140428/7521f2b3/attachment.html>
More information about the llvm-commits
mailing list