[PATCH] D58311: [MemorySSA & LoopPassManager] Enable MemorySSA as loop dependency. Update tests.
Alina Sbirlea via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Feb 15 15:34:31 PST 2019
asbirlea created this revision.
asbirlea added reviewers: chandlerc, george.burgess.iv, davide, sanjoy, gberry.
Herald added subscribers: jdoerfert, dmgreen, Prazek, jlebar.
Herald added a project: LLVM.
I'm not planning to check this in at the moment, but feedback is very welcome, in particular how this affects performance.
The feedback obtains here will guide the next steps towards enabling this.
This patch enables the use of MemorySSA in the loop pass manager.
Passes that currently use MemorySSA:
- EarlyCSE
Passes that use MemorySSA after this patch:
- EarlyCSE
- LICM
- SimpleLoopUnswitch
Loop passes that update MemorySSA (and do not use it yet, but could use it after this patch):
- LoopInstSimplify
- LoopSimplifyCFG
- LoopUnswitch
- LoopRotate
Loop passes that do *not* update MemorySSA:
- IndVarSimplify
- LoopDelete
- LoopIdiom
- LoopSink
- LoopUnroll
- LoopInterchange
- LoopUnrollAndJam
- LoopVectorize
- LoopReroll
- IRCE
Function passes that may be desirable to update MemorySSA:
- LoopSimplify
- LCSSA
Repository:
rL LLVM
https://reviews.llvm.org/D58311
Files:
lib/Analysis/LoopAnalysisManager.cpp
lib/Transforms/Utils/LoopUtils.cpp
test/Analysis/BasicAA/store-promote.ll
test/Other/loop-pm-invalidation.ll
test/Other/new-pass-manager.ll
test/Other/opt-O2-pipeline.ll
test/Other/opt-O3-pipeline.ll
test/Other/opt-Os-pipeline.ll
test/Other/opt-hot-cold-split.ll
test/Transforms/LICM/argmemonly-call.ll
test/Transforms/LICM/atomics.ll
test/Transforms/LICM/funclet.ll
test/Transforms/LICM/guards.ll
test/Transforms/LICM/hoist-debuginvariant.ll
test/Transforms/LICM/promote-order.ll
test/Transforms/LICM/read-only-calls.ll
test/Transforms/LICM/store-hoisting.ll
test/Transforms/LoopRotate/pr35210.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D58311.187102.patch
Type: text/x-patch
Size: 37914 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190215/b56c8e70/attachment.bin>
More information about the llvm-commits
mailing list