diff options
author | Sanjay Patel <spatel@rotateright.com> | 2016-02-23 23:56:23 +0000 |
---|---|---|
committer | Sanjay Patel <spatel@rotateright.com> | 2016-02-23 23:56:23 +0000 |
commit | 75b4ae25cb3ba24ddbbec9780dcdd15df022b6cc (patch) | |
tree | 139b856c167084156e8bb8c1b58769b0a475841b /llvm/lib/Transforms/Hello | |
parent | bec78181d3b25d9d76c21a599162d2746122d541 (diff) | |
download | bcm5719-llvm-75b4ae25cb3ba24ddbbec9780dcdd15df022b6cc.tar.gz bcm5719-llvm-75b4ae25cb3ba24ddbbec9780dcdd15df022b6cc.zip |
[InstCombine] refactor visitOr() to use foldCastedBitwiseLogic()
Note: The 'and' case in foldCastedBitwiseLogic() is inheriting one extra
check from the nearly identical 'or' case:
if ((!isa<ICmpInst>(Cast0Src) || !isa<ICmpInst>(Cast1Src))
But I'm not sure how to expose that difference in a regression test.
Without that check, the 'or' path will infinite loop on:
test/Transforms/InstCombine/zext-or-icmp.ll
because the zext-or-icmp fold is attempting a reverse transform.
The refactoring should extend to the 'xor' case next to solve part of
PR26702.
llvm-svn: 261707
Diffstat (limited to 'llvm/lib/Transforms/Hello')
0 files changed, 0 insertions, 0 deletions