In LegalizeOp, don't change the result type of CONVERT_RNDSAT when promoting
one of its operand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60749 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
index 445d32f..c13e84b 100644
--- a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
+++ b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
@@ -3876,8 +3876,8 @@
default: assert(0 && "Unknown cvt code!");
case ISD::CVT_SF:
case ISD::CVT_UF:
- break;
case ISD::CVT_FF:
+ break;
case ISD::CVT_FS:
case ISD::CVT_FU:
case ISD::CVT_SS:
@@ -3904,7 +3904,7 @@
Result = PromoteOp(Node->getOperand(0));
// For FP, make Op1 a i32
- Result = DAG.getConvertRndSat(Result.getValueType(), Result,
+ Result = DAG.getConvertRndSat(Op.getValueType(), Result,
DTyOp, STyOp, RndOp, SatOp, CvtCode);
break;
}