mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 20:51:52 +01:00
LTO: respect command-line options that disable vectorization.
Summary: Patches 202051 and 208013 added calls to LTO's PassManager which unconditionally add LoopVectorizePass and SLPVectorizerPass instead of following the logic in PassManagerBuilder::populateModulePassManager and honoring the -vectorize-loops -run-slp-after-loop-vectorization flags. Reviewers: nadav, aschwaighofer, yijiang Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D5884 llvm-svn: 220345
This commit is contained in:
parent
57a9dbf097
commit
be14e0d9dd
@ -440,9 +440,11 @@ void PassManagerBuilder::addLTOOptimizationPasses(PassManagerBase &PM) {
|
||||
// More loops are countable; try to optimize them.
|
||||
PM.add(createIndVarSimplifyPass());
|
||||
PM.add(createLoopDeletionPass());
|
||||
PM.add(createLoopVectorizePass(true, true));
|
||||
PM.add(createLoopVectorizePass(DisableUnrollLoops, LoopVectorize));
|
||||
|
||||
// More scalar chains could be vectorized due to more alias information
|
||||
if (RunSLPAfterLoopVectorization)
|
||||
if (SLPVectorize)
|
||||
PM.add(createSLPVectorizerPass()); // Vectorize parallel scalar chains.
|
||||
|
||||
// After vectorization, assume intrinsics may tell us more about pointer
|
||||
|
Loading…
x
Reference in New Issue
Block a user