Changes in directory llvm/test/Regression/CodeGen/PowerPC:

vec_shuffle.ll updated: 1.1 -> 1.2
---
Log message:

test vperm promotion


---
Diffs of the changes:  (+16 -0)

 vec_shuffle.ll |   16 ++++++++++++++++
 1 files changed, 16 insertions(+)


Index: llvm/test/Regression/CodeGen/PowerPC/vec_shuffle.ll
diff -u llvm/test/Regression/CodeGen/PowerPC/vec_shuffle.ll:1.1 
llvm/test/Regression/CodeGen/PowerPC/vec_shuffle.ll:1.2
--- llvm/test/Regression/CodeGen/PowerPC/vec_shuffle.ll:1.1     Thu Apr  6 
13:26:13 2006
+++ llvm/test/Regression/CodeGen/PowerPC/vec_shuffle.ll Thu Apr  6 14:21:02 2006
@@ -1,4 +1,5 @@
 ; RUN: llvm-as < %s | llc -march=ppc32 -mcpu=g5 | grep vsldoi | wc -l | grep 2
+; RUN: llvm-as < %s | opt -instcombine | llc -march=ppc32 -mcpu=g5 | not grep 
vperm
 
 void %VSLDOI_xy(<8 x short>* %A, <8 x short>* %B) {
 entry:
@@ -84,3 +85,18 @@
        store <8 x short> %tmp33, <8 x short>* %A
        ret void
 }
+
+void %VPERM_promote(<8 x short>* %A, <8 x short>* %B) {
+entry:
+        %tmp = load <8 x short>* %A             ; <<8 x short>> [#uses=1]
+        %tmp = cast <8 x short> %tmp to <4 x int>               ; <<4 x int>> 
[#uses=1]
+        %tmp2 = load <8 x short>* %B            ; <<8 x short>> [#uses=1]
+        %tmp2 = cast <8 x short> %tmp2 to <4 x int>             ; <<4 x int>> 
[#uses=1]
+        %tmp3 = call <4 x int> %llvm.ppc.altivec.vperm( <4 x int> %tmp, <4 x 
int> %tmp2, <16 x sbyte> < sbyte 14, sbyte 14, sbyte 14, sbyte 14, sbyte 14, 
sbyte 14, sbyte 14, sbyte 14, sbyte 14, sbyte 14, sbyte 14, sbyte 14, sbyte 14, 
sbyte 14, sbyte 14, sbyte 14 > )                ; <<4 x int>> [#uses=1]
+        %tmp3 = cast <4 x int> %tmp3 to <8 x short>             ; <<8 x 
short>> [#uses=1]
+        store <8 x short> %tmp3, <8 x short>* %A
+        ret void
+}
+
+declare <4 x int> %llvm.ppc.altivec.vperm(<4 x int>, <4 x int>, <16 x sbyte>)
+



_______________________________________________
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to