diff options
Diffstat (limited to 'llvm/test/CodeGen/X86/avx512-vec-cmp.ll')
-rw-r--r-- | llvm/test/CodeGen/X86/avx512-vec-cmp.ll | 25 |
1 files changed, 8 insertions, 17 deletions
diff --git a/llvm/test/CodeGen/X86/avx512-vec-cmp.ll b/llvm/test/CodeGen/X86/avx512-vec-cmp.ll index dd2b8f417ab..0c5669dec76 100644 --- a/llvm/test/CodeGen/X86/avx512-vec-cmp.ll +++ b/llvm/test/CodeGen/X86/avx512-vec-cmp.ll @@ -883,23 +883,14 @@ define <4 x i32> @test44(<4 x i16> %x, <4 x i16> %y) #0 { } define <2 x i64> @test45(<2 x i16> %x, <2 x i16> %y) #0 { -; AVX512-LABEL: test45: -; AVX512: ## %bb.0: -; AVX512-NEXT: vpxor %xmm2, %xmm2, %xmm2 -; AVX512-NEXT: vpblendw {{.*#+}} xmm1 = xmm1[0],xmm2[1,2,3],xmm1[4],xmm2[5,6,7] -; AVX512-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0],xmm2[1,2,3],xmm0[4],xmm2[5,6,7] -; AVX512-NEXT: vpcmpeqq %xmm1, %xmm0, %xmm0 -; AVX512-NEXT: vpsrlq $63, %xmm0, %xmm0 -; AVX512-NEXT: retq -; -; SKX-LABEL: test45: -; SKX: ## %bb.0: -; SKX-NEXT: vpxor %xmm2, %xmm2, %xmm2 -; SKX-NEXT: vpblendw {{.*#+}} xmm1 = xmm1[0],xmm2[1,2,3],xmm1[4],xmm2[5,6,7] -; SKX-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0],xmm2[1,2,3],xmm0[4],xmm2[5,6,7] -; SKX-NEXT: vpcmpeqq %xmm1, %xmm0, %k1 -; SKX-NEXT: vmovdqa64 {{.*}}(%rip), %xmm0 {%k1} {z} -; SKX-NEXT: retq +; CHECK-LABEL: test45: +; CHECK: ## %bb.0: +; CHECK-NEXT: vpxor %xmm2, %xmm2, %xmm2 +; CHECK-NEXT: vpblendw {{.*#+}} xmm1 = xmm1[0],xmm2[1,2,3],xmm1[4],xmm2[5,6,7] +; CHECK-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0],xmm2[1,2,3],xmm0[4],xmm2[5,6,7] +; CHECK-NEXT: vpcmpeqq %xmm1, %xmm0, %xmm0 +; CHECK-NEXT: vpsrlq $63, %xmm0, %xmm0 +; CHECK-NEXT: retq %mask = icmp eq <2 x i16> %x, %y %1 = zext <2 x i1> %mask to <2 x i64> ret <2 x i64> %1 |