[PATCH] D94138: Require chained analyses in BasicAA and AAResults to be transitive
Nikita Popov via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Jan 10 02:14:35 PST 2021
nikic added inline comments.
================
Comment at: llvm/lib/Transforms/Scalar/GVNHoist.cpp:550
AU.addPreserved<GlobalsAAWrapperPass>();
- AU.addPreserved<AAResultsWrapperPass>();
}
----------------
bjope wrote:
> foad wrote:
> > Ditto.
> I did try some different solutions here, but never really figured out exactly what was needed to avoid the assert in setLastUser (also knowing that those transitive analyses actually are preserved).
> The solution of not preserving AAResults was inspired by the change above for HexagonLoopIdiomRecognition, but it also matches what it looks like in GVN and NewGVN etc.
As this already preserves DT, possibly this only needs an explicit `AU.addPreserved<BasicAAWrapperPass>`?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D94138/new/
https://reviews.llvm.org/D94138
More information about the llvm-commits
mailing list