[all-commits] [llvm/llvm-project] 956545: [InstCombine] add tests for icmp with 'or' ops; NFC
RotateRight via All-commits
all-commits at lists.llvm.org
Tue Sep 7 13:39:55 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 9565457aad3459339c9dbd5064a8a2708fc032a9
https://github.com/llvm/llvm-project/commit/9565457aad3459339c9dbd5064a8a2708fc032a9
Author: Sanjay Patel <spatel at rotateright.com>
Date: 2021-09-07 (Tue, 07 Sep 2021)
Changed paths:
M llvm/test/Transforms/InstCombine/icmp-or.ll
Log Message:
-----------
[InstCombine] add tests for icmp with 'or' ops; NFC
Commit: a3c1669b1717545e16e33c0d7c147355f4912faa
https://github.com/llvm/llvm-project/commit/a3c1669b1717545e16e33c0d7c147355f4912faa
Author: Sanjay Patel <spatel at rotateright.com>
Date: 2021-09-07 (Tue, 07 Sep 2021)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/test/Transforms/InstCombine/icmp-or.ll
Log Message:
-----------
[InstCombine] fold icmp equality with 'or' mask ops
This could go either direction since the instruction
count is the same either way, but there are a few
reasons to prefer this:
1. We already do the related transform with 'and'
(see just above the new code).
2. We try (too hard) to compensate for not having this
and possibly other folds in transformZExtICmp(),
and that leads to bugs like https://llvm.org/PR51762 .
3. Codegen looks better across a variety of targets.
https://alive2.llvm.org/ce/z/uEgn4P
Compare: https://github.com/llvm/llvm-project/compare/af9f32132865...a3c1669b1717
More information about the All-commits
mailing list