[llvm] [DAGCombiner] Add support for scalarising extracts of a vector setcc (PR #116031)

David Sherwood via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 21 04:13:20 PST 2024


================
@@ -8,56 +8,7 @@ declare void @llvm.masked.scatter.nxv16i8.nxv16p0(<vscale x 16 x i8>, <vscale x
 define fastcc i8 @allocno_reload_assign() {
 ; CHECK-LABEL: allocno_reload_assign:
 ; CHECK:       // %bb.0:
-; CHECK-NEXT:    fmov d0, xzr
-; CHECK-NEXT:    ptrue p0.d
-; CHECK-NEXT:    mov z16.d, #0 // =0x0
-; CHECK-NEXT:    cmpeq p0.d, p0/z, z0.d, #0
-; CHECK-NEXT:    uzp1 p0.s, p0.s, p0.s
-; CHECK-NEXT:    uzp1 p0.h, p0.h, p0.h
-; CHECK-NEXT:    uzp1 p0.b, p0.b, p0.b
-; CHECK-NEXT:    mov z0.b, p0/z, #1 // =0x1
----------------
david-arm wrote:

I've stopped the new setcc fold from happening by adding an extra use of the icmp!

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


More information about the llvm-commits mailing list