[PATCH] D92698: Add recursive decomposition reasoning to isKnownNonEqual
Philip Reames via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Dec 4 15:10:04 PST 2020
reames created this revision.
reames added reviewers: spatel, nikic, fhahn, craig.topper.
Herald added subscribers: dantrushin, bollu, hiraditya, mcrosier.
reames requested review of this revision.
Herald added a project: LLVM.
The basic idea is that by looking through operand instructions which don't change the equality result that we can push the existing known bits comparison down past instructions which would obscure them.
We have analogous handling in InstSimplify for most - though weirdly not all - of these cases starting from an icmp root. It's a bit unfortunate to duplicate logic, but since my actual goal is to extend BasicAA, the icmp logic doesn't help. (And just makes it hard to test here.)
Note that this can't land until after D92694 <https://reviews.llvm.org/D92694> as the increase in scope makes that bug much more common.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D92698
Files:
llvm/lib/Analysis/ValueTracking.cpp
llvm/test/Analysis/ValueTracking/known-non-equal.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D92698.309671.patch
Type: text/x-patch
Size: 6961 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201204/39cb03e7/attachment.bin>
More information about the llvm-commits
mailing list