/freebsd/contrib/llvm-project/llvm/lib/Support/ |
H A D | ScaledNumber.cpp | 292 bool Carry = doesRoundUp(Str[Truncate]); in toString() local 293 if (!Carry) in toString() 307 Carry = false; in toString() 312 return stripTrailingZeros(std::string(Carry, '1') + Str.substr(0, Truncate)); in toString()
|
H A D | KnownBits.cpp | 45 const KnownBits &LHS, const KnownBits &RHS, const KnownBits &Carry) { in computeForAddCarry() argument 46 assert(Carry.getBitWidth() == 1 && "Carry must be 1-bit"); in computeForAddCarry() 48 LHS, RHS, Carry.Zero.getBoolValue(), Carry.One.getBoolValue()); in computeForAddCarry()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/M68k/ |
H A D | M68kISelLowering.cpp | 2212 SDValue Carry = Op.getOperand(2); in LowerSETCCCARRY() local 2219 EVT CarryVT = Carry.getValueType(); in LowerSETCCCARRY() 2221 Carry = DAG.getNode(M68kISD::ADD, DL, DAG.getVTList(CarryVT, MVT::i32), Carry, in LowerSETCCCARRY() 2226 DAG.getNode(M68kISD::SUBX, DL, VTs, LHS, RHS, Carry.getValue(1)); in LowerSETCCCARRY() 3541 SDValue Carry = CCR.getOperand(0); in combineCarryThroughADD() local 3542 while (Carry.getOpcode() == ISD::TRUNCATE || in combineCarryThroughADD() 3543 Carry.getOpcode() == ISD::ZERO_EXTEND || in combineCarryThroughADD() 3544 Carry.getOpcode() == ISD::SIGN_EXTEND || in combineCarryThroughADD() 3545 Carry.getOpcode() == ISD::ANY_EXTEND || in combineCarryThroughADD() 3546 (Carry.getOpcode() == ISD::AND && in combineCarryThroughADD() [all …]
|
H A D | M68kInstrControl.td | 56 /// CC—Carry clear GE—Greater than or equal 58 /// CS—Carry set GT—Greater than
|
H A D | M68kInstrInfo.td | 449 def MxCONDcc : PatLeaf<(i8 4)>; // Carry Clear 450 def MxCONDcs : PatLeaf<(i8 5)>; // Carry Set
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | IntegerDivision.cpp | 296 Value *Carry = Builder.CreateAnd(Tmp10, One); in generateUnsignedDivisionCode() local 325 Carry_1->addIncoming(Carry, DoWhile); in generateUnsignedDivisionCode() 337 Carry_2->addIncoming(Carry, DoWhile); in generateUnsignedDivisionCode()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/ |
H A D | BitTracker.cpp | 437 bool Carry = false; in eADD() local 444 unsigned S = bool(V1) + bool(V2) + Carry; in eADD() 446 Carry = (S > 1); in eADD() 453 if (V1.is(Carry)) in eADD() 455 else if (V2.is(Carry)) in eADD()
|
H A D | HexagonVectorCombine.cpp | 2070 Value *Carry = nullptr; in createAddLong() local 2072 std::tie(Sum[Idx], Carry) = in createAddLong() 2073 createAddCarry(Builder, WordX[Idx], WordY[Idx], Carry); in createAddLong() 2110 Value *Carry = nullptr; // no carry-in in createMulLong() local 2114 pop_back_or_zero(ProdJ), Carry); in createMulLong() 2116 Carry = CarryOut; in createMulLong()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/XCore/ |
H A D | XCoreISelLowering.cpp | 716 SDValue Carry(Lo.getNode(), 1); in ExpandADDSUB() local 719 LHSH, RHSH, Carry); in ExpandADDSUB() 1550 SDValue Carry = DAG.getConstant(0, dl, VT); in PerformDAGCombine() local 1553 SDValue Ops[] = { Result, Carry }; in PerformDAGCombine() 1564 SDValue Carry = DAG.getConstant(0, dl, VT); in PerformDAGCombine() local 1566 SDValue Ops[] = { Result, Carry }; in PerformDAGCombine() 1635 SDValue Carry(Result.getNode(), 1); in PerformDAGCombine() local 1636 SDValue Ops[] = { Carry, Result }; in PerformDAGCombine()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/ |
H A D | RISCVFeatures.td | 491 "'Zbc' (Carry-Less Multiplication)">, 495 "'Zbc' (Carry-Less Multiplication)">; 537 // The Carry-less multiply subextension for cryptography is a subset of basic 542 "'Zbkc' (Carry-less multiply instructions for " 548 "'Zbkc' (Carry-less multiply instructions for Cryptography)">; 553 "'Zbc' (Carry-Less Multiplication) or " 554 "'Zbkc' (Carry-less multiply instructions "
|
H A D | RISCVScheduleV.td | 359 // 11.4. Vector Integer Arithmetic with Carry or Borrow Instructions 595 // 11.4. Vector Integer Arithmetic with Carry or Borrow Instructions
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | AMDGPURegisterBankInfo.cpp | 1623 Register Carry; in applyMappingMAD_64_32() local 1631 Carry = B.buildICmp(CmpInst::ICMP_SLT, MulHiInVgpr ? S1 : S32, DstHi, Zero) in applyMappingMAD_64_32() 1633 MRI.setRegBank(Carry, MulHiInVgpr ? AMDGPU::VCCRegBank in applyMappingMAD_64_32() 1637 Carry = B.buildTrunc(S1, Carry).getReg(0); in applyMappingMAD_64_32() 1638 MRI.setRegBank(Carry, AMDGPU::VCCRegBank); in applyMappingMAD_64_32() 1660 Carry = B.buildXor(CarryType, Carry, Src2Sign).getReg(0); in applyMappingMAD_64_32() 1661 MRI.setRegBank(Carry, CarryBank); in applyMappingMAD_64_32() 1678 Carry = CarryHi; in applyMappingMAD_64_32() 1680 Carry = B.buildXor(CarryType, Carry, CarryHi).getReg(0); in applyMappingMAD_64_32() 1681 MRI.setRegBank(Carry, CarryBank); in applyMappingMAD_64_32() [all …]
|
H A D | AMDGPULegalizerInfo.cpp | 3875 using Carry = SmallVector<Register, 2>; in buildMultiply() typedef 3909 [&](Register &LocalAccum, const Carry &CarryIn) -> Register { in buildMultiply() 3953 [&](MutableArrayRef<Register> LocalAccum, unsigned DstIndex, Carry &CarryIn) in buildMultiply() 3954 -> Carry { in buildMultiply() 3958 Carry CarryOut; in buildMultiply() 4054 Carry EvenCarry; in buildMultiply() 4055 Carry OddCarry; in buildMultiply() 4058 Carry OddCarryIn = std::move(OddCarry); in buildMultiply() 4059 Carry EvenCarryIn = std::move(EvenCarry); in buildMultiply()
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/ |
H A D | CombinerHelper.cpp | 5082 Register Carry = MI.getOperand(1).getReg(); in matchMulOBy0() local 5084 !isConstantLegalOrBeforeLegalizer(MRI.getType(Carry))) in matchMulOBy0() 5088 B.buildConstant(Carry, 0); in matchMulOBy0() 7244 Register Carry = Add->getReg(1); in matchAddOverflow() local 7249 LLT CarryTy = MRI.getType(Carry); in matchAddOverflow() 7252 if (MRI.use_nodbg_empty(Carry) && in matchAddOverflow() 7256 B.buildUndef(Carry); in matchAddOverflow() 7265 B.buildSAddo(Dst, Carry, RHS, LHS); in matchAddOverflow() 7271 B.buildUAddo(Dst, Carry, RHS, LHS); in matchAddOverflow() 7287 B.buildConstant(Carry, Overflow); in matchAddOverflow() [all …]
|
/freebsd/contrib/llvm-project/llvm/include/llvm/Support/ |
H A D | KnownBits.h | 321 const KnownBits &LHS, const KnownBits &RHS, const KnownBits &Carry);
|
/freebsd/contrib/llvm-project/llvm/lib/Target/SystemZ/ |
H A D | SystemZISelLowering.cpp | 4342 static bool isAddCarryChain(SDValue Carry) { in isAddCarryChain() argument 4343 while (Carry.getOpcode() == ISD::UADDO_CARRY) in isAddCarryChain() 4344 Carry = Carry.getOperand(2); in isAddCarryChain() 4345 return Carry.getOpcode() == ISD::UADDO; in isAddCarryChain() 4348 static bool isSubBorrowChain(SDValue Carry) { in isSubBorrowChain() argument 4349 while (Carry.getOpcode() == ISD::USUBO_CARRY) in isSubBorrowChain() 4350 Carry = Carry.getOperand(2); in isSubBorrowChain() 4351 return Carry.getOpcode() == ISD::USUBO; in isSubBorrowChain() 4367 SDValue Carry = Op.getOperand(2); in lowerUADDSUBO_CARRY() local 4387 Carry = DAG.getNode(ISD::XOR, DL, Carry.getValueType(), in lowerUADDSUBO_CARRY() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/Lanai/ |
H A D | LanaiInstrFormats.td | 61 // (Carry), according to the result. If the flags are updated, they are 136 // (Zero), `N' (Negative), `V' (oVerflow), and `C' (Carry), according to
|
/freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/ |
H A D | README_P9.txt | 131 - Vector Multiply-by-10 (& Write Carry) Unsigned Quadword: 137 - Vector Multiply-by-10 Extended (& Write Carry) Unsigned Quadword:
|
/freebsd/contrib/llvm-project/llvm/lib/Target/Mips/ |
H A D | MipsSEISelDAGToDAG.cpp | 241 SDNode *Carry = CurDAG->getMachineNode( in selectAddE() local 246 SDValue(Carry, 0)}; in selectAddE()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
H A D | X86ScheduleSLM.td | 455 // Carry-less multiplication instructions.
|
H A D | X86ScheduleAtom.td | 489 // Carry-less multiplication instructions.
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/ |
H A D | LegalizeIntegerTypes.cpp | 3490 SDValue Carry; in ExpandIntRes_ADDSUB() local 3492 Carry = DAG.getZExtOrTrunc(Cmp, dl, NVT); in ExpandIntRes_ADDSUB() 3494 Carry = DAG.getSelect(dl, NVT, Cmp, DAG.getConstant(1, dl, NVT), in ExpandIntRes_ADDSUB() 3498 Hi = DAG.getNode(ISD::SUB, dl, NVT, HiOps[0], Carry); in ExpandIntRes_ADDSUB() 3500 Hi = DAG.getNode(ISD::ADD, dl, NVT, Hi, Carry); in ExpandIntRes_ADDSUB() 5518 SDValue Carry = N->getOperand(2); in ExpandIntOp_SETCCCARRY() local 5527 SDVTList VTList = DAG.getVTList(LHSLo.getValueType(), Carry.getValueType()); in ExpandIntOp_SETCCCARRY() 5529 DAG.getNode(ISD::USUBO_CARRY, dl, VTList, LHSLo, RHSLo, Carry); in ExpandIntOp_SETCCCARRY()
|
H A D | TargetLowering.cpp | 7685 SDValue Carry = Next.getValue(1); in expandMUL_LOHI() local 7694 Carry); in expandMUL_LOHI() 7697 Zero, Carry); in expandMUL_LOHI() 7848 SDValue Carry = DAG.getSetCC(dl, SetCCType, Sum, LL, ISD::SETULT); in expandDIVREMByConstant() local 7853 Carry = DAG.getZExtOrTrunc(Carry, dl, HiLoVT); in expandDIVREMByConstant() 7855 Carry = DAG.getSelect(dl, HiLoVT, Carry, DAG.getConstant(1, dl, HiLoVT), in expandDIVREMByConstant() 7857 Sum = DAG.getNode(ISD::ADD, dl, HiLoVT, Sum, Carry); in expandDIVREMByConstant()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/ |
H A D | ARMISelLowering.cpp | 5025 SDValue Carry = DAG.getNode(ARMISD::SUBC, DL, in ConvertBooleanCarryToCarryFlag() local 5028 return Carry.getValue(1); in ConvertBooleanCarryToCarryFlag() 6963 SDValue Carry = Op.getOperand(2); in LowerSETCCCARRY() local 6971 Carry = DAG.getNode(ISD::SUB, DL, MVT::i32, in LowerSETCCCARRY() 6972 DAG.getConstant(1, DL, MVT::i32), Carry); in LowerSETCCCARRY() 6974 Carry = ConvertBooleanCarryToCarryFlag(Carry, DAG); in LowerSETCCCARRY() 6977 SDValue Cmp = DAG.getNode(ARMISD::SUBE, DL, VTs, LHS, RHS, Carry); in LowerSETCCCARRY() 9889 SDValue Carry = Op.getOperand(2); in LowerUADDSUBO_CARRY() local 9896 Carry = ConvertBooleanCarryToCarryFlag(Carry, DAG); in LowerUADDSUBO_CARRY() 9900 Op.getOperand(1), Carry); in LowerUADDSUBO_CARRY() [all …]
|
H A D | ARMFrameLowering.cpp | 2939 bool Carry = (Value & 0x00FFFFFF); in alignToARMConstant() local 2940 Value = ((Value & 0xFF000000) >> 24) + Carry; in alignToARMConstant()
|