summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp14
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);
}
OpenPOWER on IntegriCloud