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

vec_shuffle-5.ll added (r1.1)
---
Log message:

Use movsd to shuffle in the lowest two elements of a v4f32 / v4i32 vector when
movlps cannot be used (e.g. when load from m64 has multiple uses).


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

 vec_shuffle-5.ll |   11 +++++++++++
 1 files changed, 11 insertions(+)


Index: llvm/test/Regression/CodeGen/X86/vec_shuffle-5.ll
diff -c /dev/null llvm/test/Regression/CodeGen/X86/vec_shuffle-5.ll:1.1
*** /dev/null   Wed May  3 15:29:44 2006
--- llvm/test/Regression/CodeGen/X86/vec_shuffle-5.ll   Wed May  3 15:29:34 2006
***************
*** 0 ****
--- 1,11 ----
+ ; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | grep movsd | wc -l | grep 
1
+ 
+ void %test() {
+       %tmp1 = load <4 x float>* null
+       %tmp2 = shufflevector <4 x float> %tmp1, <4 x float> < float 
1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00 >, <4 
x uint> < uint 0, uint 1, uint 6, uint 7 >
+       %tmp3 = shufflevector <4 x float> %tmp1, <4 x float> zeroinitializer, 
<4 x uint> < uint 2, uint 3, uint 6, uint 7 >
+       %tmp4 = add <4 x float> %tmp2, %tmp3
+       store <4 x float> %tmp4, <4 x float>* null
+       ret void
+ }
+ 



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

Reply via email to