new testcase
authorChris Lattner <sabre@nondot.org>
Tue, 28 Mar 2006 20:32:12 +0000 (20:32 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 28 Mar 2006 20:32:12 +0000 (20:32 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27234 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGen/X86/unpcklps.ll [new file with mode: 0644]

diff --git a/test/CodeGen/X86/unpcklps.ll b/test/CodeGen/X86/unpcklps.ll
new file mode 100644 (file)
index 0000000..b7f7d14
--- /dev/null
@@ -0,0 +1,18 @@
+; 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
+}
+