[llvm] r324812 - [X86][SSE] Regenerate old sitofp v2i32 test
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Sat Feb 10 06:45:58 PST 2018
Author: rksimon
Date: Sat Feb 10 06:45:58 2018
New Revision: 324812
URL: http://llvm.org/viewvc/llvm-project?rev=324812&view=rev
Log:
[X86][SSE] Regenerate old sitofp v2i32 test
Modified:
llvm/trunk/test/CodeGen/X86/2008-09-05-sinttofp-2xi32.ll
Modified: llvm/trunk/test/CodeGen/X86/2008-09-05-sinttofp-2xi32.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2008-09-05-sinttofp-2xi32.ll?rev=324812&r1=324811&r2=324812&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/2008-09-05-sinttofp-2xi32.ll (original)
+++ llvm/trunk/test/CodeGen/X86/2008-09-05-sinttofp-2xi32.ll Sat Feb 10 06:45:58 2018
@@ -1,19 +1,27 @@
-; RUN: llc < %s -mtriple=i686-- -mattr=+sse2,+mmx | FileCheck %s
-; originally from PR2687, but things don't work that way any more.
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc < %s -mtriple=i686-unknown -mattr=+sse2,+mmx | FileCheck %s
+
+; Originally from PR2687, but things don't work that way any more.
; there are no MMX instructions here; we use XMM.
define <2 x double> @a(<2 x i32> %x) nounwind {
+; CHECK-LABEL: a:
+; CHECK: # %bb.0: # %entry
+; CHECK-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,2,3]
+; CHECK-NEXT: cvtdq2pd %xmm0, %xmm0
+; CHECK-NEXT: retl
entry:
-; CHECK-LABEL: a
-; CHECK-NOT: unpcklpd
%y = sitofp <2 x i32> %x to <2 x double>
ret <2 x double> %y
}
define <2 x i32> @b(<2 x double> %x) nounwind {
+; CHECK-LABEL: b:
+; CHECK: # %bb.0: # %entry
+; CHECK-NEXT: cvttpd2dq %xmm0, %xmm0
+; CHECK-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,1,1,3]
+; CHECK-NEXT: retl
entry:
-; CHECK-LABEL: b
-; CHECK-NOT: unpckhpd
%y = fptosi <2 x double> %x to <2 x i32>
ret <2 x i32> %y
}
@@ -21,19 +29,21 @@ entry:
; This is how to get MMX instructions.
define <2 x double> @a2(x86_mmx %x) nounwind {
+; CHECK-LABEL: a2:
+; CHECK: # %bb.0: # %entry
+; CHECK-NEXT: cvtpi2pd %mm0, %xmm0
+; CHECK-NEXT: retl
entry:
-; CHECK-LABEL: a2
-; CHECK: cvtpi2pd
-; CHECK-NOT: cvtpi2pd
%y = tail call <2 x double> @llvm.x86.sse.cvtpi2pd(x86_mmx %x)
ret <2 x double> %y
}
define x86_mmx @b2(<2 x double> %x) nounwind {
+; CHECK-LABEL: b2:
+; CHECK: # %bb.0: # %entry
+; CHECK-NEXT: cvttpd2pi %xmm0, %mm0
+; CHECK-NEXT: retl
entry:
-; CHECK-LABEL: b2
-; CHECK: cvttpd2pi
-; CHECK-NOT: cvttpd2pi
%y = tail call x86_mmx @llvm.x86.sse.cvttpd2pi (<2 x double> %x)
ret x86_mmx %y
}
More information about the llvm-commits
mailing list