]> granicus.if.org Git - llvm/commitdiff
[X86] Use SelectionDAG::getFPExtendOrRound to simplify some code.
authorCraig Topper <craig.topper@intel.com>
Mon, 25 Dec 2017 00:54:51 +0000 (00:54 +0000)
committerCraig Topper <craig.topper@intel.com>
Mon, 25 Dec 2017 00:54:51 +0000 (00:54 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@321432 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86ISelLowering.cpp

index 2c1faa157ddb6b20255324f6f1ceb71198b012a6..e49fb6609bb0b5574b6ef70ff66194e518c6f34d 100644 (file)
@@ -15760,16 +15760,7 @@ SDValue X86TargetLowering::LowerUINT_TO_FP_i32(SDValue Op,
   SDValue Sub = DAG.getNode(ISD::FSUB, dl, MVT::f64, Or, Bias);
 
   // Handle final rounding.
-  MVT DestVT = Op.getSimpleValueType();
-
-  if (DestVT.bitsLT(MVT::f64))
-    return DAG.getNode(ISD::FP_ROUND, dl, DestVT, Sub,
-                       DAG.getIntPtrConstant(0, dl));
-  if (DestVT.bitsGT(MVT::f64))
-    return DAG.getNode(ISD::FP_EXTEND, dl, DestVT, Sub);
-
-  // Handle final rounding.
-  return Sub;
+  return DAG.getFPExtendOrRound(Sub, dl, Op.getSimpleValueType());
 }
 
 static SDValue lowerUINT_TO_FP_v2i32(SDValue Op, SelectionDAG &DAG,