summaryrefslogtreecommitdiff
path: root/test/CodeGen/PowerPC/vec_shuffle.ll
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-04-08 07:13:46 +0000
committerChris Lattner <sabre@nondot.org>2006-04-08 07:13:46 +0000
commita7cdc88799fa32d731e68ce14d42c3a27df8b3eb (patch)
tree31182028358d9ffec87a67dd1e23860cc0d66913 /test/CodeGen/PowerPC/vec_shuffle.ll
parent140a58f9dfda30dbb80edd3da1b5632c178f7efc (diff)
downloadllvm-a7cdc88799fa32d731e68ce14d42c3a27df8b3eb.tar.gz
llvm-a7cdc88799fa32d731e68ce14d42c3a27df8b3eb.tar.bz2
llvm-a7cdc88799fa32d731e68ce14d42c3a27df8b3eb.tar.xz
add new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27537 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/PowerPC/vec_shuffle.ll')
-rw-r--r--test/CodeGen/PowerPC/vec_shuffle.ll16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/CodeGen/PowerPC/vec_shuffle.ll b/test/CodeGen/PowerPC/vec_shuffle.ll
index efea8f21e4..44562fe169 100644
--- a/test/CodeGen/PowerPC/vec_shuffle.ll
+++ b/test/CodeGen/PowerPC/vec_shuffle.ll
@@ -253,6 +253,21 @@ void %tw_h(<4 x int>* %A, <4 x int>* %B) {
entry:
%tmp = load <4 x int>* %A ; <<4 x int>> [#uses=2]
%tmp2 = load <4 x int>* %B ; <<4 x int>> [#uses=2]
+ %tmp = extractelement <4 x int> %tmp2, uint 0 ; <int> [#uses=1]
+ %tmp3 = extractelement <4 x int> %tmp, uint 0 ; <int> [#uses=1]
+ %tmp4 = extractelement <4 x int> %tmp2, uint 1 ; <int> [#uses=1]
+ %tmp5 = extractelement <4 x int> %tmp, uint 1 ; <int> [#uses=1]
+ %tmp6 = insertelement <4 x int> undef, int %tmp, uint 0 ; <<4 x int>> [#uses=1]
+ %tmp7 = insertelement <4 x int> %tmp6, int %tmp3, uint 1 ; <<4 x int>> [#uses=1]
+ %tmp8 = insertelement <4 x int> %tmp7, int %tmp4, uint 2 ; <<4 x int>> [#uses=1]
+ %tmp9 = insertelement <4 x int> %tmp8, int %tmp5, uint 3 ; <<4 x int>> [#uses=1]
+ store <4 x int> %tmp9, <4 x int>* %A
+ ret void
+}
+
+void %tw_h_flop(<4 x int>* %A, <4 x int>* %B) {
+ %tmp = load <4 x int>* %A ; <<4 x int>> [#uses=2]
+ %tmp2 = load <4 x int>* %B ; <<4 x int>> [#uses=2]
%tmp = extractelement <4 x int> %tmp, uint 0 ; <int> [#uses=1]
%tmp3 = extractelement <4 x int> %tmp2, uint 0 ; <int> [#uses=1]
%tmp4 = extractelement <4 x int> %tmp, uint 1 ; <int> [#uses=1]
@@ -265,6 +280,7 @@ entry:
ret void
}
+
void %VMRG_UNARY_tb_l(<16 x sbyte>* %A, <16 x sbyte>* %B) {
entry:
%tmp = load <16 x sbyte>* %A ; <<16 x sbyte>> [#uses=16]