Similar for the sle version which will be canonicalized to slt first.
Alive2 proof as implemented: https://alive2.llvm.org/ce/z/_YawdM
@spatel's original Alive2: https://alive2.llvm.org/ce/z/3YB2vs
Paths
| Differential D141773
[InstCombine] Generalize (icmp sgt (1 << Y), -1) -> (icmp ne Y, BitWidth-1) to any negative constant. ClosedPublic Authored by craig.topper on Jan 14 2023, 11:44 AM.
Details Summary Similar for the sle version which will be canonicalized to slt first. Alive2 proof as implemented: https://alive2.llvm.org/ce/z/_YawdM @spatel's original Alive2: https://alive2.llvm.org/ce/z/3YB2vs
Diff Detail
Event TimelineComment Actions
I've added new proofs for the version as implemented. Comment Actions https://alive2.llvm.org/ce/z/ynf5JE I suspect, there should be a generalization for non-negative constants, too. This revision is now accepted and ready to land.Jan 15 2023, 4:55 AM This revision was landed with ongoing or failed builds.Jan 15 2023, 1:43 PM Closed by commit rG77f2f34d696b: [InstCombine] Generalize (icmp sgt (1 << Y), -1) -> (icmp ne Y, BitWidth-1) to… (authored by craig.topper). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 489308 llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
llvm/test/Transforms/InstCombine/icmp.ll
|
clang-format not found in user’s local PATH; not linting file.