summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/CodeGen/X86/fabs.ll4
-rw-r--r--test/CodeGen/X86/xmm-r64.ll11
2 files changed, 13 insertions, 2 deletions
diff --git a/test/CodeGen/X86/fabs.ll b/test/CodeGen/X86/fabs.ll
index 68f892fa99..ce28c6de8a 100644
--- a/test/CodeGen/X86/fabs.ll
+++ b/test/CodeGen/X86/fabs.ll
@@ -7,12 +7,12 @@ target pointersize = 32
declare float %fabsf(float)
-float %fabsftest(float %X) {
+float %test1(float %X) {
%Y = call float %fabsf(float %X)
ret float %Y
}
-double %fabstest2(double %X) {
+double %test2(double %X) {
%Y = setge double %X, -0.0
%Z = sub double -0.0, %X
%Q = select bool %Y, double %X, double %Z
diff --git a/test/CodeGen/X86/xmm-r64.ll b/test/CodeGen/X86/xmm-r64.ll
new file mode 100644
index 0000000000..bf2d61ea52
--- /dev/null
+++ b/test/CodeGen/X86/xmm-r64.ll
@@ -0,0 +1,11 @@
+; RUN: llvm-as < %s | llc -march=x86-64
+
+<4 x int> %test() {
+ %tmp1039 = call <4 x int> %llvm.x86.sse2.psll.d( <4 x int> zeroinitializer, <4 x int> zeroinitializer ) ; <<4 x int>> [#uses=1]
+ %tmp1040 = cast <4 x int> %tmp1039 to <2 x long> ; <<2 x long>> [#uses=1]
+ %tmp1048 = add <2 x long> %tmp1040, zeroinitializer ; <<2 x long>> [#uses=1]
+ %tmp1048 = cast <2 x long> %tmp1048 to <4 x int> ; <<4 x int>> [#uses=1]
+ ret <4 x int> %tmp1048
+}
+
+declare <4 x int> %llvm.x86.sse2.psll.d(<4 x int>, <4 x int>)