1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00

[PM] Add LoopVectorize to the default module pipeline

LV no longer "requires" LCSSA and LoopSimplify, and instead forms
them internally as required. So, there's nothing preventing it from
being enabled.

llvm-svn: 292464
This commit is contained in:
Michael Kuperstein 2017-01-19 02:21:54 +00:00
parent 6640a08a0a
commit f1841d2b3e
2 changed files with 1 additions and 4 deletions

View File

@ -496,11 +496,7 @@ PassBuilder::buildPerModuleDefaultPipeline(OptimizationLevel Level,
// rather than on each loop in an inside-out manner, and so they are actually
// function passes.
OptimizePM.addPass(LoopDistributePass());
#if 0
// FIXME: LoopVectorize relies on "requiring" LCSSA which isn't supported in
// the new PM.
OptimizePM.addPass(LoopVectorizePass());
#endif
// FIXME: Need to port Loop Load Elimination and add it here.
OptimizePM.addPass(InstCombinePass());

View File

@ -456,6 +456,7 @@
; CHECK-O: Starting llvm::Function pass manager run.
; CHECK-O: Running pass: Float2IntPass
; CHECK-O: Running pass: LoopDistributePass
; CHECK-O: Running pass: LoopVectorizePass
; CHECK-O: Running pass: InstCombinePass
; CHECK-O: Running pass: SLPVectorizerPass
; CHECK-O: Running pass: SimplifyCFGPass