[PATCH] D148633: [SCEV] Clarify inference in isAddRecNeverPoison()
Max Kazantsev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 21 04:50:16 PDT 2023
mkazantsev accepted this revision.
mkazantsev added inline comments.
This revision is now accepted and ready to land.
================
Comment at: llvm/lib/Analysis/ScalarEvolution.cpp:7292
for (const Use &U : Poison->uses()) {
- const User *PoisonUser = U.getUser();
- if (propagatesPoison(U)) {
- if (Pushed.insert(cast<Instruction>(PoisonUser)).second)
- PoisonStack.push_back(cast<Instruction>(PoisonUser));
- } else if (auto *BI = dyn_cast<BranchInst>(PoisonUser)) {
- assert(BI->isConditional() && "Only possibility!");
- if (BI->getParent() == LatchBB) {
- LatchControlDependentOnPoison = true;
- break;
- }
- }
+ const Instruction *PoisonUser = cast<Instruction>(U.getUser());
+ if (mustTriggerUB(PoisonUser, KnownPoison) &&
----------------
Skip users that are not in the same loop just to save some time?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D148633/new/
https://reviews.llvm.org/D148633
More information about the llvm-commits
mailing list