[PATCH] D70623: [SCEV] Compute trip counts w/frozen conditions

Philip Reames via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 22 15:11:08 PST 2019


reames created this revision.
reames added reviewers: dalegr, sanjoy, nlopes, aqjune.
Herald added subscribers: javed.absar, bollu, hiraditya, mcrosier.
Herald added a project: LLVM.

I'd really appreciate a sceptical eye on this.  I'm not 100% sure this is correct.

The motivation is that unswitching a loop nest will produce conditions in the outer loop which are frozen.  If that exit would otherwise be computable, we'd really like it to remain computable w/freeze.

My hesitation is that I'm not sure it's sound to propagate an analysis result (potentially based on UB) through freeze.  What do folks think?  Is this legal?  Or not?

If not, suggestions for alternate approaches to recover knowledge in SCEV?


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D70623

Files:
  llvm/lib/Analysis/ScalarEvolution.cpp
  llvm/test/Analysis/ScalarEvolution/trip-count.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D70623.230732.patch
Type: text/x-patch
Size: 3513 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191122/9726eb54/attachment.bin>


More information about the llvm-commits mailing list