[llvm] [llvm] [InstCombine] fold "icmp eq (X + (V - 1)) & -V, X" to "icmp eq (and X, V - 1), 0" (PR #152851)

Pavel Skripkin via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 13 13:05:31 PDT 2025


pskrgag wrote:

CI complains about `CodeGen/Thumb2/mve-vcvt-fixed-to-float.ll:479`. IR looks unrelated to my change

```llvm
define arm_aapcs_vfpcc <8 x half> @vcvt_i16_15(<8 x i16> %0) {
; CHECK-LABEL: vcvt_i16_15:
; CHECK:       @ %bb.0:
; CHECK-NEXT:    vmov.i16 q1, #0x200
; CHECK-NEXT:    vcvt.f16.s16 q0, q0
; CHECK-NEXT:    vmul.f16 q0, q0, q1
; CHECK-NEXT:    bx lr
  %2 = sitofp <8 x i16> %0 to <8 x half>
  %3 = fmul ninf <8 x half> %2, <half 0xH0200, half 0xH0200, half 0xH0200, half 0xH0200, half 0xH0200, half 0xH0200, half 0xH0200, half 0xH0200>
  ret <8 x half> %3
}
```

https://github.com/llvm/llvm-project/pull/152851


More information about the llvm-commits mailing list