[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