[PATCH] D111001: [SCEV] Infer flags from binop when scope bounded by unknown

Philip Reames via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Oct 2 12:20:19 PDT 2021


reames created this revision.
reames added reviewers: nikic, efriedma.
Herald added subscribers: javed.absar, bollu, hiraditya, mcrosier.
reames requested review of this revision.
Herald added a project: LLVM.

This extends the inference used by isSCEVExprNeverPoison to handle the case where the defining scope is bounded by a SCEVUnknown in either the header block or the preheader block of the loop containing the instruction of interest.

This was suggested in review of D109789 <https://reviews.llvm.org/D109789>, and helps recover some of the lost optimization potential there.

This definitely can not land until after D109845 <https://reviews.llvm.org/D109845> as it exposes the bug being fixed by that patch more often.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D111001

Files:
  llvm/lib/Analysis/ScalarEvolution.cpp
  llvm/test/Analysis/ScalarEvolution/flags-from-poison.ll
  llvm/test/Analysis/ScalarEvolution/load.ll
  llvm/test/Analysis/ScalarEvolution/ptrtoint.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D111001.376718.patch
Type: text/x-patch
Size: 10060 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211002/a96ae4f6/attachment.bin>


More information about the llvm-commits mailing list