[clang] [llvm] [X86][APX] Emit SetZUCC instead of legacy setcc when ZU is enabled (PR #173965)

Phoebe Wang via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 31 05:26:33 PST 2025


================
@@ -504,6 +772,24 @@ define <4 x i32> @scmp_normal_vectors(<4 x i32> %x, <4 x i32> %y) nounwind {
 ; X86-NEXT:    popl %edi
 ; X86-NEXT:    popl %ebx
 ; X86-NEXT:    retl $4
+;
+; SETZUCC-LABEL: scmp_normal_vectors:
+; SETZUCC:       # %bb.0:
+; SETZUCC-NEXT:    movdqa %xmm0, %xmm2
+; SETZUCC-NEXT:    pcmpgtd %xmm1, %xmm2
+; SETZUCC-NEXT:    pcmpgtd %xmm0, %xmm1
+; SETZUCC-NEXT:    psubd %xmm2, %xmm1
+; SETZUCC-NEXT:    movdqa %xmm1, %xmm0
+; SETZUCC-NEXT:    retq
+;
+; NO-SETZUCC-LABEL: scmp_normal_vectors:
+; NO-SETZUCC:       # %bb.0:
+; NO-SETZUCC-NEXT:    movdqa %xmm0, %xmm2
+; NO-SETZUCC-NEXT:    pcmpgtd %xmm1, %xmm2
+; NO-SETZUCC-NEXT:    pcmpgtd %xmm0, %xmm1
+; NO-SETZUCC-NEXT:    psubd %xmm2, %xmm1
+; NO-SETZUCC-NEXT:    movdqa %xmm1, %xmm0
+; NO-SETZUCC-NEXT:    retq
----------------
phoebewang wrote:

These are the same as SSE. We can add a common SSE prefix in the RUN.

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


More information about the llvm-commits mailing list