diff options
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/CodeGen/X86/avx2-vbroadcast.ll | 3 | ||||
-rw-r--r-- | llvm/test/CodeGen/X86/splat-for-size.ll | 16 |
2 files changed, 12 insertions, 7 deletions
diff --git a/llvm/test/CodeGen/X86/avx2-vbroadcast.ll b/llvm/test/CodeGen/X86/avx2-vbroadcast.ll index 4e004d2583b..029c21ae046 100644 --- a/llvm/test/CodeGen/X86/avx2-vbroadcast.ll +++ b/llvm/test/CodeGen/X86/avx2-vbroadcast.ll @@ -250,8 +250,7 @@ define <8 x i16> @broadcast_mem_v4i16_v8i16(<4 x i16>* %ptr) { ; X32-AVX2-LABEL: broadcast_mem_v4i16_v8i16: ; X32-AVX2: ## BB#0: ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-AVX2-NEXT: vmovsd {{.*#+}} xmm0 = mem[0],zero -; X32-AVX2-NEXT: vmovddup {{.*#+}} xmm0 = xmm0[0,0] +; X32-AVX2-NEXT: vmovddup {{.*#+}} xmm0 = mem[0,0] ; X32-AVX2-NEXT: retl ; ; X64-AVX2-LABEL: broadcast_mem_v4i16_v8i16: diff --git a/llvm/test/CodeGen/X86/splat-for-size.ll b/llvm/test/CodeGen/X86/splat-for-size.ll index 277472f49b3..0d1c1bcf76b 100644 --- a/llvm/test/CodeGen/X86/splat-for-size.ll +++ b/llvm/test/CodeGen/X86/splat-for-size.ll @@ -49,11 +49,17 @@ define <8 x float> @splat_v8f32(<8 x float> %x) #1 { ; AVX can't do integer splats, so fake it: use vmovddup to splat 64-bit value. ; We also generate vmovddup for AVX2 because it's one byte smaller than vpbroadcastq. define <2 x i64> @splat_v2i64(<2 x i64> %x) #1 { -; CHECK-LABEL: splat_v2i64: -; CHECK: # BB#0: -; CHECK-NEXT: vmovddup {{.*#+}} xmm1 = mem[0,0] -; CHECK-NEXT: vpaddq %xmm1, %xmm0, %xmm0 -; CHECK-NEXT: retq +; AVX-LABEL: splat_v2i64: +; AVX: # BB#0: +; AVX-NEXT: vmovddup {{.*#+}} xmm1 = mem[0,0] +; AVX-NEXT: vpaddq %xmm1, %xmm0, %xmm0 +; AVX-NEXT: retq +; +; AVX2-LABEL: splat_v2i64: +; AVX2: # BB#0: +; AVX2-NEXT: vpbroadcastq {{.*}}(%rip), %xmm1 +; AVX2-NEXT: vpaddq %xmm1, %xmm0, %xmm0 +; AVX2-NEXT: retq %add = add <2 x i64> %x, <i64 1, i64 1> ret <2 x i64> %add } |