[PATCH] D60832: [MemorySSA] LCSSA preserves MemorySSA.
Chandler Carruth via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 18 16:39:18 PDT 2019
chandlerc requested changes to this revision.
chandlerc added a comment.
This revision now requires changes to proceed.
Mostly questions around the AA manager preservation, see inline.
================
Comment at: include/llvm/Analysis/LoopAnalysisManager.h:64-66
-/// Enables memory ssa as a dependency for loop passes.
-extern cl::opt<bool> EnableMSSALoopDependency;
-
----------------
You should move the definition as well as the declaration.
It does make sense to me to put this in MemorySSA.cpp itself -- its something a bunch of users of it need to coordinate about, including the loop analysis manager.
================
Comment at: lib/Transforms/Utils/LCSSA.cpp:490-491
PA.preserve<ScalarEvolutionAnalysis>();
+ // In the new pass manager, LCSSA must mark the AAManager as preserved too, in
+ // order to correctly preserve MemorySSA.
+ PA.preserve<MemorySSAAnalysis>();
----------------
Should the AA manager just preserve itself instead so that this isn't so confusing for users?
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D60832/new/
https://reviews.llvm.org/D60832
More information about the llvm-commits
mailing list