New test case.
authorEvan Cheng <evan.cheng@apple.com>
Tue, 7 Nov 2006 22:18:14 +0000 (22:18 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Tue, 7 Nov 2006 22:18:14 +0000 (22:18 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31520 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGen/X86/unpcklps.ll [deleted file]
test/CodeGen/X86/vec_shuffle-10.ll [new file with mode: 0644]

diff --git a/test/CodeGen/X86/unpcklps.ll b/test/CodeGen/X86/unpcklps.ll
deleted file mode 100644 (file)
index b7f7d14..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-; RUN: llvm-as < %s | llc -march=x86 -mcpu=yonah | grep unpcklps &&
-; RUN: llvm-as < %s | llc -march=x86 -mcpu=yonah | not grep 'sub.*esp'
-
-void %test(<4 x float>* %res, <4 x float>* %A, <4 x float>* %B) {
-        %tmp = load <4 x float>* %B             ; <<4 x float>> [#uses=2]
-        %tmp3 = load <4 x float>* %A            ; <<4 x float>> [#uses=2]
-        %tmp = extractelement <4 x float> %tmp3, uint 0         ; <float> [#uses=1]
-        %tmp7 = extractelement <4 x float> %tmp, uint 0         ; <float> [#uses=1]
-        %tmp8 = extractelement <4 x float> %tmp3, uint 1                ; <float> [#uses=1]
-        %tmp9 = extractelement <4 x float> %tmp, uint 1         ; <float> [#uses=1]
-        %tmp10 = insertelement <4 x float> undef, float %tmp, uint 0            ; <<4 x float>> [#uses=1]
-        %tmp11 = insertelement <4 x float> %tmp10, float %tmp7, uint 1          ; <<4 x float>> [#uses=1]
-        %tmp12 = insertelement <4 x float> %tmp11, float %tmp8, uint 2          ; <<4 x float>> [#uses=1]
-        %tmp13 = insertelement <4 x float> %tmp12, float %tmp9, uint 3          ; <<4 x float>> [#uses=1]
-        store <4 x float> %tmp13, <4 x float>* %res
-        ret void
-}
-
diff --git a/test/CodeGen/X86/vec_shuffle-10.ll b/test/CodeGen/X86/vec_shuffle-10.ll
new file mode 100644 (file)
index 0000000..b3fc841
--- /dev/null
@@ -0,0 +1,25 @@
+; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 &&
+; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | grep unpcklps | wc -l | grep 1 &&
+; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | grep unpckhps | wc -l | grep 1 &&
+; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | not grep 'sub.*esp'
+
+void %test(<4 x float>* %res, <4 x float>* %A, <4 x float>* %B) {
+        %tmp = load <4 x float>* %B             ; <<4 x float>> [#uses=2]
+        %tmp3 = load <4 x float>* %A            ; <<4 x float>> [#uses=2]
+        %tmp = extractelement <4 x float> %tmp3, uint 0         ; <float> [#uses=1]
+        %tmp7 = extractelement <4 x float> %tmp, uint 0         ; <float> [#uses=1]
+        %tmp8 = extractelement <4 x float> %tmp3, uint 1                ; <float> [#uses=1]
+        %tmp9 = extractelement <4 x float> %tmp, uint 1         ; <float> [#uses=1]
+        %tmp10 = insertelement <4 x float> undef, float %tmp, uint 0            ; <<4 x float>> [#uses=1]
+        %tmp11 = insertelement <4 x float> %tmp10, float %tmp7, uint 1          ; <<4 x float>> [#uses=1]
+        %tmp12 = insertelement <4 x float> %tmp11, float %tmp8, uint 2          ; <<4 x float>> [#uses=1]
+        %tmp13 = insertelement <4 x float> %tmp12, float %tmp9, uint 3          ; <<4 x float>> [#uses=1]
+        store <4 x float> %tmp13, <4 x float>* %res
+        ret void
+}
+
+void %test2(<4 x float> %X, <4 x float>* %res) {
+       %tmp5 = shufflevector <4 x float> %X, <4 x float> undef, <4 x uint> < uint 2, uint 6, uint 3, uint 7 >
+       store <4 x float> %tmp5, <4 x float>* %res
+       ret void
+}