summaryrefslogtreecommitdiff
path: root/test/CodeGen/X86/widen_shuffle-1.ll
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2011-11-16 02:52:39 +0000
committerEli Friedman <eli.friedman@gmail.com>2011-11-16 02:52:39 +0000
commitd577df8e5ada3f4f97fa90bdc46c6f9b1db1dee1 (patch)
tree9792b4820af203b34bb7b1b9fe44e8a897595336 /test/CodeGen/X86/widen_shuffle-1.ll
parentb91b6001a63ea22cdad1a5392cb2b8a604d8219c (diff)
downloadllvm-d577df8e5ada3f4f97fa90bdc46c6f9b1db1dee1.tar.gz
llvm-d577df8e5ada3f4f97fa90bdc46c6f9b1db1dee1.tar.bz2
llvm-d577df8e5ada3f4f97fa90bdc46c6f9b1db1dee1.tar.xz
CONCAT_VECTORS can have more than two operands. PR11389.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144768 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/widen_shuffle-1.ll')
-rw-r--r--test/CodeGen/X86/widen_shuffle-1.ll9
1 files changed, 9 insertions, 0 deletions
diff --git a/test/CodeGen/X86/widen_shuffle-1.ll b/test/CodeGen/X86/widen_shuffle-1.ll
index 2df3b6a30c..58c61e7261 100644
--- a/test/CodeGen/X86/widen_shuffle-1.ll
+++ b/test/CodeGen/X86/widen_shuffle-1.ll
@@ -54,3 +54,12 @@ define <8 x i8> @shuf4(<4 x i8> %a, <4 x i8> %b) nounwind readnone {
%vshuf = shufflevector <4 x i8> %a, <4 x i8> %b, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7>
ret <8 x i8> %vshuf
}
+
+; PR11389: another CONCAT_VECTORS case
+define void @shuf5(<8 x i8>* %p) nounwind {
+; CHECK: shuf5:
+; CHECK-NOT: punpcklwd
+ %v = shufflevector <2 x i8> <i8 4, i8 33>, <2 x i8> undef, <8 x i32> <i32 1, i32 1, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
+ store <8 x i8> %v, <8 x i8>* %p, align 8
+ ret void
+}