[PATCH] D92367: [SCEV] Fix incorrect exit count calculated in error scope

Max Kazantsev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 4 04:25:48 PST 2020


mkazantsev added inline comments.


================
Comment at: llvm/lib/Analysis/ScalarEvolution.cpp:7828
+  if (!IdxExpr || !IdxExpr->getLoop()->contains(L) || !IdxExpr->isAffine() ||
+      isLoopInvariant(IdxExpr, L) ||
       !isa<SCEVConstant>(IdxExpr->getOperand(0)) ||
----------------
mkazantsev wrote:
> You require the `IdxExpr` be from a containing loop, which automatically makes  `IdxExpr` invariant w.r.t. `L`. So this whole condition is just trivially false. Is that really what you want to make?
Sorry, the whole condition is trivially true. AddRecs from containing loops are always invariant w.r.t child loops.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D92367/new/

https://reviews.llvm.org/D92367



More information about the llvm-commits mailing list