[PATCH] D135354: [LoopPredication] Insert assumes of conditions of predicated guards
Dmitry Makogon via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Oct 7 00:08:08 PDT 2022
dmakogon added inline comments.
================
Comment at: llvm/lib/Transforms/Scalar/LoopPredication.cpp:831
+ }
RecursivelyDeleteTriviallyDeadInstructions(OldCond, nullptr /* TLI */, MSSAU);
----------------
mkazantsev wrote:
> mkazantsev wrote:
> > It's no longer dead.
> Move to `else` block.
Actually it is dead. The OldCond here would be something like
```%explicit_guard_cond = and i1 %cond.1, %wc```
and it is no longer used in a branch, however it makes use of widenable condition.
So there are two uses of it: the new `and` inserted by LoopPredication and this old one.
We require that widenable condition has exactly one use, so we have to remove it.
`cond.1` is no longer dead, not this one
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D135354/new/
https://reviews.llvm.org/D135354
More information about the llvm-commits
mailing list