diff options
Diffstat (limited to 'llvm/test/CodeGen/X86/subvector-broadcast.ll')
| -rw-r--r-- | llvm/test/CodeGen/X86/subvector-broadcast.ll | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/llvm/test/CodeGen/X86/subvector-broadcast.ll b/llvm/test/CodeGen/X86/subvector-broadcast.ll index 89b40925cd7..0005bcc26c6 100644 --- a/llvm/test/CodeGen/X86/subvector-broadcast.ll +++ b/llvm/test/CodeGen/X86/subvector-broadcast.ll @@ -1598,9 +1598,8 @@ define <16 x i32> @test_2xi32_to_16xi32_mem(<2 x i32>* %vp) { ; X32-AVX512-LABEL: test_2xi32_to_16xi32_mem: ; X32-AVX512: # %bb.0: ; X32-AVX512-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-AVX512-NEXT: vpmovzxdq {{.*#+}} xmm0 = mem[0],zero,mem[1],zero -; X32-AVX512-NEXT: vmovdqa64 {{.*#+}} zmm1 = [0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2] -; X32-AVX512-NEXT: vpermd %zmm0, %zmm1, %zmm0 +; X32-AVX512-NEXT: vmovsd {{.*#+}} xmm0 = mem[0],zero +; X32-AVX512-NEXT: vbroadcastsd %xmm0, %zmm0 ; X32-AVX512-NEXT: retl ; ; X64-AVX-LABEL: test_2xi32_to_16xi32_mem: @@ -1611,9 +1610,8 @@ define <16 x i32> @test_2xi32_to_16xi32_mem(<2 x i32>* %vp) { ; ; X64-AVX512-LABEL: test_2xi32_to_16xi32_mem: ; X64-AVX512: # %bb.0: -; X64-AVX512-NEXT: vpmovzxdq {{.*#+}} xmm0 = mem[0],zero,mem[1],zero -; X64-AVX512-NEXT: vmovdqa64 {{.*#+}} zmm1 = [0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2] -; X64-AVX512-NEXT: vpermd %zmm0, %zmm1, %zmm0 +; X64-AVX512-NEXT: vmovsd {{.*#+}} xmm0 = mem[0],zero +; X64-AVX512-NEXT: vbroadcastsd %xmm0, %zmm0 ; X64-AVX512-NEXT: retq %vec = load <2 x i32>, <2 x i32>* %vp %res = shufflevector <2 x i32> %vec, <2 x i32> undef, <16 x i32> <i32 0, i32 1, i32 0, i32 1, i32 0, i32 1, i32 0, i32 1, i32 0, i32 1, i32 0, i32 1, i32 0, i32 1, i32 0, i32 1> |

