diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2015-04-03 10:02:21 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2015-04-03 10:02:21 +0000 |
commit | 4e60da755a221f080a25079abfcc021f7bf14f1c (patch) | |
tree | 44fc8589b2463c46de054bdd19fe55cfcc8f887d /test/CodeGen/X86/vec_insert-5.ll | |
parent | c39f5dd0e2d689a10d1e7de3da07f1975c0aa8f4 (diff) |
[DAGCombiner] Combine shuffles of BUILD_VECTOR and SCALAR_TO_VECTOR
This patch attempts to fold the shuffling of 'scalar source' inputs - BUILD_VECTOR and SCALAR_TO_VECTOR nodes - if the shuffle node is the only user. This folds away a lot of unnecessary shuffle nodes, and allows quite a bit of constant folding that was being missed.
Differential Revision: http://reviews.llvm.org/D8516
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@234004 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/vec_insert-5.ll')
-rw-r--r-- | test/CodeGen/X86/vec_insert-5.ll | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/test/CodeGen/X86/vec_insert-5.ll b/test/CodeGen/X86/vec_insert-5.ll index 0f8951529dd..26ac2a23e31 100644 --- a/test/CodeGen/X86/vec_insert-5.ll +++ b/test/CodeGen/X86/vec_insert-5.ll @@ -8,7 +8,7 @@ define void @t1(i32 %a, x86_mmx* %P) nounwind { ; CHECK-NEXT: movl {{[0-9]+}}(%esp), %ecx ; CHECK-NEXT: shll $12, %ecx ; CHECK-NEXT: movd %ecx, %xmm0 -; CHECK-NEXT: pshufd {{.*#+}} xmm0 = xmm0[1,0,0,1] +; CHECK-NEXT: pshufd {{.*#+}} xmm0 = xmm0[1,0,1,1] ; CHECK-NEXT: movlpd %xmm0, (%eax) ; CHECK-NEXT: retl %tmp12 = shl i32 %a, 12 |