| /llvm-project-15.0.7/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 | 51 const KnownBits &LHS, const KnownBits &RHS, const KnownBits &Carry) { in computeForAddCarry() argument 52 assert(Carry.getBitWidth() == 1 && "Carry must be 1-bit"); in computeForAddCarry() 54 LHS, RHS, Carry.Zero.getBoolValue(), Carry.One.getBoolValue()); in computeForAddCarry()
|
| /llvm-project-15.0.7/llvm/lib/Target/RISCV/ |
| H A D | RISCV.td | 147 "'Zbc' (Carry-Less Multiplication)">; 150 "'Zbc' (Carry-Less Multiplication)">; 248 // The Carry-less multiply subextension for cryptography is a subset of basic carry-less multiply s… 251 "'Zbkc' (Carry-less multiply instructions for Cryptography)">; 255 "'Zbkc' (Carry-less multiply instructions for Cryptography)">; 260 "'Zbc' (Carry-Less Multiplication) or " 261 "'Zbkc' (Carry-less multiply instructions for Cryptography)">;
|
| H A D | RISCVScheduleV.td | 104 // 11.4. Vector Integer Arithmetic with Carry or Borrow Instructions 326 // 11.4. Vector Integer Arithmetic with Carry or Borrow Instructions
|
| /llvm-project-15.0.7/llvm/test/MC/RISCV/ |
| H A D | rv32zbkc-invalid.s | 9 clmulr t0, t1, t2 # CHECK: :[[@LINE]]:1: error: instruction requires the following: 'Zbc' (Carry-Le…
|
| H A D | rv32i-invalid.s | 182 clmul a0, a1, a2 # CHECK: :[[@LINE]]:1: error: instruction requires the following: 'Zbc' (Carry-Les…
|
| /llvm-project-15.0.7/llvm/lib/Target/M68k/ |
| H A D | M68kISelLowering.cpp | 1982 SDValue Carry = Op.getOperand(2); in LowerSETCCCARRY() local 1989 EVT CarryVT = Carry.getValueType(); in LowerSETCCCARRY() 1991 Carry = DAG.getNode(M68kISD::ADD, DL, DAG.getVTList(CarryVT, MVT::i32), Carry, in LowerSETCCCARRY() 3362 SDValue Carry = CCR.getOperand(0); in combineCarryThroughADD() local 3363 while (Carry.getOpcode() == ISD::TRUNCATE || in combineCarryThroughADD() 3366 Carry.getOpcode() == ISD::ANY_EXTEND || in combineCarryThroughADD() 3367 (Carry.getOpcode() == ISD::AND && in combineCarryThroughADD() 3368 isOneConstant(Carry.getOperand(1)))) in combineCarryThroughADD() 3369 Carry = Carry.getOperand(0); in combineCarryThroughADD() 3370 if (Carry.getOpcode() == M68kISD::SETCC || 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
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Utils/ |
| H A D | IntegerDivision.cpp | 315 Value *Carry = Builder.CreateAnd(Tmp10, One); in generateUnsignedDivisionCode() local 344 Carry_1->addIncoming(Carry, DoWhile); in generateUnsignedDivisionCode() 356 Carry_2->addIncoming(Carry, DoWhile); in generateUnsignedDivisionCode()
|
| /llvm-project-15.0.7/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()
|
| /llvm-project-15.0.7/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPURegisterBankInfo.cpp | 1630 Register Carry; in applyMappingMAD_64_32() local 1644 Carry = B.buildTrunc(S1, Carry).getReg(0); in applyMappingMAD_64_32() 1645 MRI.setRegBank(Carry, AMDGPU::VCCRegBank); in applyMappingMAD_64_32() 1667 Carry = B.buildXor(CarryType, Carry, Src2Sign).getReg(0); in applyMappingMAD_64_32() 1668 MRI.setRegBank(Carry, CarryBank); in applyMappingMAD_64_32() 1685 Carry = CarryHi; in applyMappingMAD_64_32() 1687 Carry = B.buildXor(CarryType, Carry, CarryHi).getReg(0); in applyMappingMAD_64_32() 1688 MRI.setRegBank(Carry, CarryBank); in applyMappingMAD_64_32() 1693 MRI.setRegBank(Carry, CarryBank); in applyMappingMAD_64_32() 1700 B.buildCopy(Dst1, Carry); in applyMappingMAD_64_32() [all …]
|
| H A D | AMDGPULegalizerInfo.cpp | 2920 using Carry = SmallVector<Register, 2>; in buildMultiply() typedef 2947 [&](Register &LocalAccum, const Carry &CarryIn) -> Register { in buildMultiply() 2991 [&](MutableArrayRef<Register> LocalAccum, unsigned DstIndex, Carry &CarryIn) in buildMultiply() 2992 -> Carry { in buildMultiply() 2996 Carry CarryOut; in buildMultiply() 3082 Carry EvenCarry; in buildMultiply() 3083 Carry OddCarry; in buildMultiply() 3086 Carry OddCarryIn = std::move(OddCarry); in buildMultiply() 3087 Carry EvenCarryIn = std::move(EvenCarry); in buildMultiply()
|
| /llvm-project-15.0.7/llvm/lib/Target/XCore/ |
| H A D | XCoreISelLowering.cpp | 722 SDValue Carry(Lo.getNode(), 1); in ExpandADDSUB() local 725 LHSH, RHSH, Carry); in ExpandADDSUB() 1645 SDValue Carry = DAG.getConstant(0, dl, VT); in PerformDAGCombine() local 1648 SDValue Ops[] = { Result, Carry }; in PerformDAGCombine() 1659 SDValue Carry = DAG.getConstant(0, dl, VT); in PerformDAGCombine() local 1661 SDValue Ops[] = { Result, Carry }; in PerformDAGCombine() 1730 SDValue Carry(Result.getNode(), 1); in PerformDAGCombine() local 1731 SDValue Ops[] = { Carry, Result }; in PerformDAGCombine()
|
| /llvm-project-15.0.7/llvm/unittests/Support/ |
| H A D | KnownBitsTest.cpp | 33 ForeachNumInKnownBits(KnownCarry, [&](const APInt &Carry) { in TEST() argument 35 if (Carry.getBoolValue()) in TEST()
|
| /llvm-project-15.0.7/llvm/include/llvm/Support/ |
| H A D | KnownBits.h | 319 const KnownBits &LHS, const KnownBits &RHS, const KnownBits &Carry);
|
| /llvm-project-15.0.7/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
|
| /llvm-project-15.0.7/llvm/lib/Target/SystemZ/ |
| H A D | SystemZISelLowering.cpp | 3993 static bool isAddCarryChain(SDValue Carry) { in isAddCarryChain() argument 3994 while (Carry.getOpcode() == ISD::ADDCARRY) in isAddCarryChain() 3995 Carry = Carry.getOperand(2); in isAddCarryChain() 3996 return Carry.getOpcode() == ISD::UADDO; in isAddCarryChain() 4000 while (Carry.getOpcode() == ISD::SUBCARRY) in isSubBorrowChain() 4001 Carry = Carry.getOperand(2); in isSubBorrowChain() 4002 return Carry.getOpcode() == ISD::USUBO; in isSubBorrowChain() 4018 SDValue Carry = Op.getOperand(2); in lowerADDSUBCARRY() local 4027 if (!isAddCarryChain(Carry)) in lowerADDSUBCARRY() 4035 if (!isSubBorrowChain(Carry)) in lowerADDSUBCARRY() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/Mips/ |
| H A D | MipsSEISelDAGToDAG.cpp | 241 SDNode *Carry = CurDAG->getMachineNode( in selectAddE() local 246 SDValue(Carry, 0)}; in selectAddE()
|
| /llvm-project-15.0.7/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:
|
| /llvm-project-15.0.7/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | LegalizeIntegerTypes.cpp | 2156 SDValue Carry = N->getOperand(2); in PromoteIntOp_ADDSUBCARRY() local 2159 Carry = PromoteTargetBoolean(Carry, LHS.getValueType()); in PromoteIntOp_ADDSUBCARRY() 2161 return SDValue(DAG.UpdateNodeOperands(N, LHS, RHS, Carry), 0); in PromoteIntOp_ADDSUBCARRY() 2995 SDValue Carry = DAG.getZExtOrTrunc(Cmp1, dl, NVT); in ExpandIntRes_ADDSUB() local 2996 Hi = DAG.getNode(ISD::ADD, dl, NVT, Hi, Carry); in ExpandIntRes_ADDSUB() 4959 SDValue Carry = N->getOperand(2); in ExpandIntOp_SETCCCARRY() local 4968 SDVTList VTList = DAG.getVTList(LHSLo.getValueType(), Carry.getValueType()); in ExpandIntOp_SETCCCARRY() 4969 SDValue LowCmp = DAG.getNode(ISD::SUBCARRY, dl, VTList, LHSLo, RHSLo, Carry); in ExpandIntOp_SETCCCARRY()
|
| /llvm-project-15.0.7/llvm/lib/CodeGen/GlobalISel/ |
| H A D | CombinerHelper.cpp | 4755 Register Carry = MI.getOperand(1).getReg(); in matchMulOBy0() local 4757 !isConstantLegalOrBeforeLegalizer(MRI.getType(Carry))) in matchMulOBy0() 4761 B.buildConstant(Carry, 0); in matchMulOBy0() 4772 Register Carry = MI.getOperand(1).getReg(); in matchAddOBy0() local 4773 if (!isConstantLegalOrBeforeLegalizer(MRI.getType(Carry))) in matchAddOBy0() 4779 B.buildConstant(Carry, 0); in matchAddOBy0()
|
| /llvm-project-15.0.7/llvm/lib/Target/X86/ |
| H A D | X86ScheduleSLM.td | 455 // Carry-less multiplication instructions.
|
| H A D | X86ScheduleAtom.td | 490 // Carry-less multiplication instructions.
|
| /llvm-project-15.0.7/llvm/lib/Target/ARM/ |
| H A D | ARMISelLowering.cpp | 4968 SDValue Carry = DAG.getNode(ARMISD::SUBC, DL, in ConvertBooleanCarryToCarryFlag() local 4971 return Carry.getValue(1); in ConvertBooleanCarryToCarryFlag() 6863 SDValue Carry = Op.getOperand(2); in LowerSETCCCARRY() local 6871 Carry = DAG.getNode(ISD::SUB, DL, MVT::i32, in LowerSETCCCARRY() 6874 Carry = ConvertBooleanCarryToCarryFlag(Carry, DAG); in LowerSETCCCARRY() 9730 SDValue Carry = Op.getOperand(2); in LowerADDSUBCARRY() local 9737 Carry = ConvertBooleanCarryToCarryFlag(Carry, DAG); in LowerADDSUBCARRY() 9748 Carry = DAG.getNode(ISD::SUB, DL, MVT::i32, in LowerADDSUBCARRY() 9751 Carry = ConvertBooleanCarryToCarryFlag(Carry, DAG); in LowerADDSUBCARRY() 9761 Carry = DAG.getNode(ISD::SUB, DL, MVT::i32, in LowerADDSUBCARRY() [all …]
|