Lines Matching defs:Carry0
3465 SDValue Carry0, SDValue Carry1,
3467 if (Carry1.getResNo() != 1 || Carry0.getResNo() != 1)
3478 if (Carry0.getOpcode() == ISD::UADDO_CARRY &&
3479 isNullConstant(Carry0.getOperand(1))) {
3480 Z = Carry0.getOperand(2);
3481 } else if (Carry0.getOpcode() == ISD::UADDO &&
3482 isOneConstant(Carry0.getOperand(1))) {
3483 EVT VT = Carry0->getValueType(1);
3484 Z = DAG.getConstant(1, SDLoc(Carry0.getOperand(1)), VT);
3494 DAG.getNode(ISD::UADDO_CARRY, DL, Carry0->getVTList(), A, B, Z);
3508 if (Carry0.getOperand(0) == Carry1.getValue(0)) {
3519 if (Carry1.getOperand(0) == Carry0.getValue(0)) {
3520 return cancelDiamond(Carry0.getOperand(0), Carry1.getOperand(1));
3523 if (Carry1.getOperand(1) == Carry0.getValue(0)) {
3524 return cancelDiamond(Carry1.getOperand(0), Carry0.getOperand(0));
3558 SDValue Carry0 = getAsCarry(TLI, N0);
3559 if (!Carry0)
3565 unsigned Opcode = Carry0.getOpcode();
3572 if (CarryOutType != Carry0.getValue(1).getValueType() ||
3577 // as Carry0 and the add/sub of the carry in as Carry1 (the middle node).
3578 if (Carry1.getNode()->isOperandOf(Carry0.getNode()))
3579 std::swap(Carry0, Carry1);
3582 if (Carry1.getOperand(0) != Carry0.getValue(0) &&
3583 Carry1.getOperand(1) != Carry0.getValue(0))
3588 Carry1.getOperand(0) == Carry0.getValue(0) ? 1 : 0;
3594 if (!TLI.isOperationLegalOrCustom(NewOp, Carry0.getValue(0).getValueType()))
3606 DAG.getNode(NewOp, DL, Carry1->getVTList(), Carry0.getOperand(0),
3607 Carry0.getOperand(1), CarryIn);