[PATCH] D71936: [SCCP] Use constant ranges for binary operators.

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 18 05:24:37 PDT 2020


fhahn updated this revision to Diff 251042.
fhahn added a comment.

Use constant range logic also for overdefined/notconstant operands. It covers almost all special cases as before, excluding when vector constants are involved. In practice those do not seem to matter much. With the special logic enabled just for vectors, there are no changes in the result binaries. But we can generalize the constant handling to also support simplifying based on special constants, by using SimplifyInstruction for example.

This also makes  D75054 <https://reviews.llvm.org/D75054> obsolete.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D71936

Files:
  llvm/lib/Transforms/Scalar/SCCP.cpp
  llvm/test/Transforms/SCCP/binaryops-range-special-cases.ll
  llvm/test/Transforms/SCCP/ip-ranges-binaryops.ll
  llvm/test/Transforms/SCCP/range-and.ll
  llvm/test/Transforms/SCCP/vector-bitcast.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D71936.251042.patch
Type: text/x-patch
Size: 10783 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200318/010d753c/attachment-0001.bin>


More information about the llvm-commits mailing list