aboutsummaryrefslogtreecommitdiffstats
path: root/test/Transforms/InstCombine/vec_shuffle.ll
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-10-11 22:54:48 +0000
committerChris Lattner <sabre@nondot.org>2009-10-11 22:54:48 +0000
commit0a11939fe88763d4c22c03fa19aaf8f1f9050b4f (patch)
tree3b73283d2f4487b8fe93c8d179df5b131af94b7d /test/Transforms/InstCombine/vec_shuffle.ll
parent98d59dfbb6cf8884bb09ffb1813e9b73f20db471 (diff)
downloadexternal_llvm-0a11939fe88763d4c22c03fa19aaf8f1f9050b4f.zip
external_llvm-0a11939fe88763d4c22c03fa19aaf8f1f9050b4f.tar.gz
external_llvm-0a11939fe88763d4c22c03fa19aaf8f1f9050b4f.tar.bz2
reduce vec_shuffle2 and merge into vec_shuffle.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83807 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/InstCombine/vec_shuffle.ll')
-rw-r--r--test/Transforms/InstCombine/vec_shuffle.ll10
1 files changed, 10 insertions, 0 deletions
diff --git a/test/Transforms/InstCombine/vec_shuffle.ll b/test/Transforms/InstCombine/vec_shuffle.ll
index 8c35154..29adc1e 100644
--- a/test/Transforms/InstCombine/vec_shuffle.ll
+++ b/test/Transforms/InstCombine/vec_shuffle.ll
@@ -77,3 +77,13 @@ define <4 x float> @test8(<4 x float> %tmp, <4 x float> %tmp1) {
ret <4 x float> %tmp134
}
+; Test fold of two shuffles where the first shuffle vectors inputs are a
+; different length then the second.
+define <4 x i8> @test9(<16 x i8> %tmp6) nounwind {
+; CHECK: @test9
+; CHECK-NEXT: shufflevector
+; CHECK-NEXT: ret
+ %tmp7 = shufflevector <16 x i8> %tmp6, <16 x i8> undef, <4 x i32> < i32 13, i32 9, i32 4, i32 13 > ; <<4 x i8>> [#uses=1]
+ %tmp9 = shufflevector <4 x i8> %tmp7, <4 x i8> undef, <4 x i32> < i32 3, i32 1, i32 2, i32 0 > ; <<4 x i8>> [#uses=1]
+ ret <4 x i8> %tmp9
+} \ No newline at end of file