diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2018-11-21 11:00:09 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2018-11-21 11:00:09 +0000 |
commit | 66bae9aee83c4c48d4642f218b3afec6dff8e83b (patch) | |
tree | dbc9daa28ed2ba4e1be6710bd63ad7d14e662abb /llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll | |
parent | c5b152bdef89d004175f314088801397e07e64f5 (diff) | |
download | bcm5719-llvm-66bae9aee83c4c48d4642f218b3afec6dff8e83b.tar.gz bcm5719-llvm-66bae9aee83c4c48d4642f218b3afec6dff8e83b.zip |
[X86][AVX] Remove BROADCAST if we only need the 0'th element
We don't catch this with target shuffle simplification if the src/dst types are different.
llvm-svn: 347386
Diffstat (limited to 'llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll')
-rw-r--r-- | llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll b/llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll index 95d53ace5d3..2ea0f1ab3e7 100644 --- a/llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll +++ b/llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll @@ -313,7 +313,7 @@ define <4 x float> @combine_vpbroadcast_pshufb_as_vpbroadcastss128(<4 x float> % define <8 x float> @combine_vpbroadcast_permd_as_vpbroadcastss256(<4 x float> %a) { ; CHECK-LABEL: combine_vpbroadcast_permd_as_vpbroadcastss256: ; CHECK: # %bb.0: -; CHECK-NEXT: vbroadcastss %xmm0, %ymm0 +; CHECK-NEXT: # kill: def $xmm0 killed $xmm0 def $ymm0 ; CHECK-NEXT: vbroadcastss %xmm0, %ymm0 ; CHECK-NEXT: ret{{[l|q]}} %1 = shufflevector <4 x float> %a, <4 x float> undef, <8 x i32> zeroinitializer @@ -324,7 +324,7 @@ define <8 x float> @combine_vpbroadcast_permd_as_vpbroadcastss256(<4 x float> %a define <4 x double> @combine_vpbroadcast_permd_as_vpbroadcastsd256(<2 x double> %a) { ; CHECK-LABEL: combine_vpbroadcast_permd_as_vpbroadcastsd256: ; CHECK: # %bb.0: -; CHECK-NEXT: vbroadcastsd %xmm0, %ymm0 +; CHECK-NEXT: # kill: def $xmm0 killed $xmm0 def $ymm0 ; CHECK-NEXT: vbroadcastsd %xmm0, %ymm0 ; CHECK-NEXT: ret{{[l|q]}} %1 = shufflevector <2 x double> %a, <2 x double> undef, <4 x i32> zeroinitializer |