[llvm] [X86] SimplifyDemandedBitsForTargetNode - add X86ISD::BLENDI handling (PR #133102)

Phoebe Wang via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 26 08:48:00 PDT 2025


================
@@ -75,39 +75,15 @@ define i1 @movmskps_allof_bitcast_v4f64(<4 x double> %a0) {
 }
 
 ;
-; TODO - Avoid sign extension ops when just extracting the sign bits.
+; Avoid sign extension ops when just extracting the sign bits.
 ;
 
 define i32 @movmskpd_cmpgt_v4i64(<4 x i64> %a0) {
-; VTEST-AVX1-LABEL: movmskpd_cmpgt_v4i64:
-; VTEST-AVX1:       # %bb.0:
-; VTEST-AVX1-NEXT:    vpxor %xmm1, %xmm1, %xmm1
-; VTEST-AVX1-NEXT:    vpcmpgtq %xmm0, %xmm1, %xmm1
-; VTEST-AVX1-NEXT:    vblendpd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3]
-; VTEST-AVX1-NEXT:    vmovmskpd %ymm0, %eax
-; VTEST-AVX1-NEXT:    vzeroupper
-; VTEST-AVX1-NEXT:    retq
-;
-; VTEST-AVX2-LABEL: movmskpd_cmpgt_v4i64:
-; VTEST-AVX2:       # %bb.0:
-; VTEST-AVX2-NEXT:    vmovmskpd %ymm0, %eax
-; VTEST-AVX2-NEXT:    vzeroupper
-; VTEST-AVX2-NEXT:    retq
-;
-; MOVMSK-AVX1-LABEL: movmskpd_cmpgt_v4i64:
-; MOVMSK-AVX1:       # %bb.0:
-; MOVMSK-AVX1-NEXT:    vpxor %xmm1, %xmm1, %xmm1
-; MOVMSK-AVX1-NEXT:    vpcmpgtq %xmm0, %xmm1, %xmm1
-; MOVMSK-AVX1-NEXT:    vblendpd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3]
-; MOVMSK-AVX1-NEXT:    vmovmskpd %ymm0, %eax
-; MOVMSK-AVX1-NEXT:    vzeroupper
-; MOVMSK-AVX1-NEXT:    retq
-;
-; MOVMSK-AVX2-LABEL: movmskpd_cmpgt_v4i64:
-; MOVMSK-AVX2:       # %bb.0:
-; MOVMSK-AVX2-NEXT:    vmovmskpd %ymm0, %eax
-; MOVMSK-AVX2-NEXT:    vzeroupper
-; MOVMSK-AVX2-NEXT:    retq
+; CHECK-LABEL: movmskpd_cmpgt_v4i64:
+; CHECK:       # %bb.0:
+; CHECK-NEXT:    vmovmskpd %ymm0, %eax
+; CHECK-NEXT:    vzeroupper
+; CHECK-NEXT:    retq
   %1 = icmp sgt <4 x i64> zeroinitializer, %a0
----------------
phoebewang wrote:

sgt or sge?

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


More information about the llvm-commits mailing list