[PATCH] D16100: Fix for two constant propagation problems in GVN with assume intrinsic instruction
Yuanrui Zhang via llvm-commits
llvm-commits at lists.llvm.org
Mon Jan 11 17:01:04 PST 2016
Ray created this revision.
Ray added reviewers: DavidKreitzer, Prazek.
Ray added a subscriber: llvm-commits.
This patch fixes two constant propagation problems in GVN for assume intrinsic instruction. The first problem is filed in PR25285: when there are multiple instances of the same assume instructions in a basic block with a loop back-edge pointing to itself, the first assume instruction is incorrectly constant-propagated with the value "TRUE" and eliminated later on. The second problem is that, the value "TRUE" is incorrectly constant-propagated to the successor blocks that are not dominated by the basic block containing the assume instruction.
http://reviews.llvm.org/D16100
Files:
include/llvm/Transforms/Utils/Local.h
lib/Transforms/Scalar/GVN.cpp
lib/Transforms/Utils/Local.cpp
test/Transforms/GVN/assume-equal.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D16100.44578.patch
Type: text/x-patch
Size: 4405 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160112/d14667fb/attachment.bin>
More information about the llvm-commits
mailing list