Issue |
141930
|
Summary |
[InstCombine] SignBitCheck(SignPreservingOp(X)) -> SignBitCheck(X)
|
Labels |
llvm:instcombine,
missed-optimization
|
Assignees |
dtcxzyw
|
Reporter |
dtcxzyw
|
Alive2: https://alive2.llvm.org/ce/z/c2vTkD
```
define i1 @src(i16 %x) {
%spec.select7.i.i.i.i.i = call i16 @llvm.smax(i16 %x, i16 -128)
%.08.i.i.i.i.i = call i16 @llvm.smin(i16 %spec.select7.i.i.i.i.i, i16 127)
%trunc = trunc nsw i16 %.08.i.i.i.i.i to i8
%cmp = icmp slt i8 %trunc, 0
ret i1 %cmp
}
define i1 @tgt(i16 %x) {
%cmp = icmp slt i16 %x, 0
ret i1 %cmp
}
```
This pattern exists in Lean4.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs