[PATCH] D139515: [SCEV] Remember blocks for which we know symbolic exit count but not exact

Max Kazantsev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 7 01:19:40 PST 2022


mkazantsev created this revision.
mkazantsev added reviewers: nikic, lebedev.ri, fhahn, reames.
Herald added a subscriber: hiraditya.
Herald added a project: All.
mkazantsev requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

The old code didn't bother to memoize blocks for which exact exit count is not
known. As result, in situation when exact isn't known but symbolic is known, this
info was lost. This patch fixes the situation: now we memoize when symbilic is
known (exact always implies symbolic, so this is a strict superset of what was before).


https://reviews.llvm.org/D139515

Files:
  llvm/lib/Analysis/ScalarEvolution.cpp
  llvm/test/Analysis/ScalarEvolution/addrec-computed-during-addrec-calculation.ll
  llvm/test/Analysis/ScalarEvolution/symbolic_max_exit_count.ll
  llvm/test/Analysis/ScalarEvolution/trip-count10.ll
  llvm/test/Analysis/ScalarEvolution/trip-count7.ll
  llvm/test/Analysis/ScalarEvolution/widenable-condition.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D139515.480807.patch
Type: text/x-patch
Size: 6298 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20221207/caa161df/attachment.bin>


More information about the llvm-commits mailing list