[PATCH] D28452: [PM] Move the LoopPassManager to the transforms library.
Chandler Carruth via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sat Jan 7 19:52:51 PST 2017
chandlerc created this revision.
chandlerc added reviewers: mehdi_amini, mkuper, sanjoy, bogner, mzolotukhin.
chandlerc added a subscriber: llvm-commits.
Herald added subscribers: mgorny, mcrosier.
While the loop PM uses an analysis to form the IR units, the current
plan is to have the PM itself establish and enforce both loop simplified
form and LCSSA. This would be a layering violation in the analysis
library.
Fundamentally, the idea behind the loop PM is to *transform* loops in
addition to running passes over them, so it really seemed like the most
natural place to sink this was into the transforms library.
https://reviews.llvm.org/D28452
Files:
include/llvm/Analysis/IVUsers.h
include/llvm/Analysis/LoopAccessAnalysis.h
include/llvm/Analysis/LoopPassManager.h
include/llvm/Passes/PassBuilder.h
include/llvm/Transforms/Scalar/IndVarSimplify.h
include/llvm/Transforms/Scalar/LICM.h
include/llvm/Transforms/Scalar/LoopDeletion.h
include/llvm/Transforms/Scalar/LoopIdiomRecognize.h
include/llvm/Transforms/Scalar/LoopInstSimplify.h
include/llvm/Transforms/Scalar/LoopPassManager.h
include/llvm/Transforms/Scalar/LoopRotation.h
include/llvm/Transforms/Scalar/LoopSimplifyCFG.h
include/llvm/Transforms/Scalar/LoopStrengthReduce.h
include/llvm/Transforms/Scalar/LoopUnrollPass.h
include/llvm/Transforms/Vectorize/LoopVectorize.h
lib/Analysis/CMakeLists.txt
lib/Analysis/IVUsers.cpp
lib/Analysis/LoopAccessAnalysis.cpp
lib/Analysis/LoopPass.cpp
lib/Analysis/LoopPassManager.cpp
lib/LTO/LTOBackend.cpp
lib/Passes/PassBuilder.cpp
lib/Transforms/Scalar/CMakeLists.txt
lib/Transforms/Scalar/IndVarSimplify.cpp
lib/Transforms/Scalar/LICM.cpp
lib/Transforms/Scalar/LoopDeletion.cpp
lib/Transforms/Scalar/LoopDistribute.cpp
lib/Transforms/Scalar/LoopIdiomRecognize.cpp
lib/Transforms/Scalar/LoopInstSimplify.cpp
lib/Transforms/Scalar/LoopPassManager.cpp
lib/Transforms/Scalar/LoopRotation.cpp
lib/Transforms/Scalar/LoopSimplifyCFG.cpp
lib/Transforms/Scalar/LoopSink.cpp
lib/Transforms/Scalar/LoopStrengthReduce.cpp
lib/Transforms/Scalar/LoopUnrollPass.cpp
tools/opt/NewPMDriver.cpp
unittests/Analysis/CMakeLists.txt
unittests/Analysis/LoopPassManagerTest.cpp
unittests/Transforms/CMakeLists.txt
unittests/Transforms/Scalar/CMakeLists.txt
unittests/Transforms/Scalar/LoopPassManagerTest.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D28452.83545.patch
Type: text/x-patch
Size: 38954 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170108/7f4d9d7e/attachment.bin>
More information about the llvm-commits
mailing list