diff options
-rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp b/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp index fa0e7b89eef..cfcab55ce4e 100644 --- a/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp @@ -1445,19 +1445,7 @@ SDValue DAGTypeLegalizer::PromoteIntOp_ADDSUBCARRY(SDNode *N, unsigned OpNo) { SDValue Carry = N->getOperand(2); SDLoc DL(N); - auto VT = getSetCCResultType(LHS.getValueType()); - TargetLoweringBase::BooleanContent BoolType = TLI.getBooleanContents(VT); - switch (BoolType) { - case TargetLoweringBase::UndefinedBooleanContent: - Carry = DAG.getAnyExtOrTrunc(Carry, DL, VT); - break; - case TargetLoweringBase::ZeroOrOneBooleanContent: - Carry = DAG.getZExtOrTrunc(Carry, DL, VT); - break; - case TargetLoweringBase::ZeroOrNegativeOneBooleanContent: - Carry = DAG.getSExtOrTrunc(Carry, DL, VT); - break; - } + Carry = PromoteTargetBoolean(Carry, LHS.getValueType()); return SDValue(DAG.UpdateNodeOperands(N, LHS, RHS, Carry), 0); } |