[PATCH] D63928: [ARM][SCEV][LSR] Prevent using undefined value in binops
Eugene Leviant via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 28 06:07:45 PDT 2019
evgeny777 created this revision.
evgeny777 added reviewers: javed.absar, efriedma, dexonsmith, samparker.
Herald added subscribers: sanjoy, kristof.beyls.
This is an attempt to fix https://bugs.llvm.org/show_bug.cgi?id=42436
I find easiest way to fix the issue is to not creating undefined value when adding a cast in SCEV expander. For my sample function (see bug description)
subtraction of results of two different ptrtoint instructions (with the same pointer) is correctly folded to zero by the backend. However there could be
potential issues, so any suggestions are highly welcome.
https://reviews.llvm.org/D63928
Files:
lib/Analysis/ScalarEvolutionExpander.cpp
test/CodeGen/ARM/lsr-undef-in-binop.ll
test/Transforms/LoopDistribute/bounds-expansion-bug.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D63928.207047.patch
Type: text/x-patch
Size: 12515 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190628/8ef401ff/attachment.bin>
More information about the llvm-commits
mailing list