Fix PR15309

- Fix the typo on type checking



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177010 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Michael Liao 2013-03-14 06:57:42 +00:00
parent a3493e2ad8
commit 6f8c6852a0
2 changed files with 17 additions and 1 deletions

View File

@ -12262,7 +12262,8 @@ void X86TargetLowering::ReplaceNodeResults(SDNode *N,
return;
}
case ISD::UINT_TO_FP: {
if (N->getOperand(0).getValueType() != MVT::v2i32 &&
assert(Subtarget->hasSSE2() && "Requires at least SSE2!");
if (N->getOperand(0).getValueType() != MVT::v2i32 ||
N->getValueType(0) != MVT::v2f32)
return;
SDValue ZExtIn = DAG.getNode(ISD::ZERO_EXTEND, dl, MVT::v2i64,

View File

@ -0,0 +1,15 @@
; RUN: llc < %s -mtriple=i686-linux-pc -mcpu=corei7 | FileCheck %s
define void @test_convert_float2_ulong2(<2 x i64>* nocapture %src, <2 x float>* nocapture %dest) noinline {
L.entry:
%0 = getelementptr <2 x i64>* %src, i32 10
%1 = load <2 x i64>* %0, align 16
%2 = uitofp <2 x i64> %1 to <2 x float>
%3 = getelementptr <2 x float>* %dest, i32 10
store <2 x float> %2, <2 x float>* %3, align 8
ret void
}
; CHECK: test_convert_float2_ulong2
; CHECK-NOT: cvtpd2ps
; CHECK: ret