[llvm-commits] CVS: llvm/test/Regression/CodeGen/X86/sse-fcopysign.ll

Evan Cheng evan.cheng at apple.com
Fri Jan 5 00:13:30 PST 2007



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

sse-fcopysign.ll added (r1.1)
---
Log message:

Add a test case for SSE fcopysign using SSE bitwise operations.

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

 sse-fcopysign.ll |   18 ++++++++++++++++++
 1 files changed, 18 insertions(+)


Index: llvm/test/Regression/CodeGen/X86/sse-fcopysign.ll
diff -c /dev/null llvm/test/Regression/CodeGen/X86/sse-fcopysign.ll:1.1
*** /dev/null	Fri Jan  5 02:13:09 2007
--- llvm/test/Regression/CodeGen/X86/sse-fcopysign.ll	Fri Jan  5 02:12:59 2007
***************
*** 0 ****
--- 1,18 ----
+ ; RUN: llvm-as | llc -march=x86 -mattr=+sse2 &&
+ ; RUN: llvm-as | llc -march=x86 -mattr=+sse2 | grep pslldq | wc -l | grep 1 &&
+ ; RUN: llvm-as | llc -march=x86 -mattr=+sse2 | not getp test
+ 
+ define float %test1(float %a, float %b) {
+ 	%tmp = tail call float %copysignf( float %b, float %a )
+ 	ret float %tmp
+ }
+ 
+ define double %test2(double %a, float %b, float %c) {
+ 	%tmp1 = add float %b, %c
+ 	%tmp2 = fpext float %tmp1 to double
+ 	%tmp = tail call double %copysign( double %a, double %tmp2 )
+ 	ret double %tmp
+ }
+ 
+ declare float %copysignf(float, float)
+ declare double %copysign(double, double)






More information about the llvm-commits mailing list