| /freebsd/contrib/llvm-project/llvm/lib/Support/ |
| H A D | ScaledNumber.cpp | 57 std::pair<uint32_t, int16_t> ScaledNumbers::divide32(uint32_t Dividend, in divide32() argument 59 assert(Dividend && "expected non-zero dividend"); in divide32() 63 uint64_t Dividend64 = Dividend; in divide32() 80 std::pair<uint64_t, int16_t> ScaledNumbers::divide64(uint64_t Dividend, in divide64() argument 82 assert(Dividend && "expected non-zero dividend"); in divide64() 94 return std::make_pair(Dividend, Shift); in divide64() 97 if (int Zeros = llvm::countl_zero(Dividend)) { in divide64() 99 Dividend <<= Zeros; in divide64() 103 uint64_t Quotient = Dividend / Divisor; in divide64() 104 Dividend %= Divisor; in divide64() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | IntegerDivision.cpp | 32 static Value *generateSignedRemainderCode(Value *Dividend, Value *Divisor, in generateSignedRemainderCode() argument 34 unsigned BitWidth = Dividend->getType()->getIntegerBitWidth(); in generateSignedRemainderCode() 49 Dividend = Builder.CreateFreeze(Dividend); in generateSignedRemainderCode() 51 Value *DividendSign = Builder.CreateAShr(Dividend, Shift); in generateSignedRemainderCode() 53 Value *DvdXor = Builder.CreateXor(Dividend, DividendSign); in generateSignedRemainderCode() 73 static Value *generateUnsignedRemainderCode(Value *Dividend, Value *Divisor, in generateUnsignedRemainderCode() argument 82 Dividend = Builder.CreateFreeze(Dividend); in generateUnsignedRemainderCode() 84 Value *Quotient = Builder.CreateUDiv(Dividend, Divisor); in generateUnsignedRemainderCode() 86 Value *Remainder = Builder.CreateSub(Dividend, Product); in generateUnsignedRemainderCode() 99 static Value *generateSignedDivisionCode(Value *Dividend, Value *Divisor, in generateSignedDivisionCode() argument [all …]
|
| H A D | BypassSlowDivision.cpp | 154 Value *Dividend = SlowDivOrRem->getOperand(0); in getReplacement() local 156 DivRemMapKey Key(isSignedOp(), Dividend, Divisor); in getReplacement() 265 Value *Dividend = SlowDivOrRem->getOperand(0); in createSlowBB() local 269 DivRemPair.Quotient = Builder.CreateSDiv(Dividend, Divisor); in createSlowBB() 270 DivRemPair.Remainder = Builder.CreateSRem(Dividend, Divisor); in createSlowBB() 272 DivRemPair.Quotient = Builder.CreateUDiv(Dividend, Divisor); in createSlowBB() 273 DivRemPair.Remainder = Builder.CreateURem(Dividend, Divisor); in createSlowBB() 289 Value *Dividend = SlowDivOrRem->getOperand(0); in createFastBB() local 294 Builder.CreateCast(Instruction::Trunc, Dividend, BypassType); in createFastBB() 351 Value *Dividend = SlowDivOrRem->getOperand(0); in insertFastDivAndRem() local [all …]
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/ |
| H A D | BypassSlowDivision.h | 32 AssertingVH<Value> Dividend; member 38 : SignedOp(InSignedOp), Dividend(InDividend), Divisor(InDivisor) {} in DivRemMapKey() 43 return Val1.SignedOp == Val2.SignedOp && Val1.Dividend == Val2.Dividend && 57 static_cast<Value *>(Val.Dividend)) ^
|
| /freebsd/sys/contrib/dev/acpica/components/utilities/ |
| H A D | utmath.c | 446 UINT64 Dividend, in AcpiUtShortDivide() argument 467 DividendOvl.Full = Dividend; in AcpiUtShortDivide() 516 UINT64_OVERLAY Dividend; in AcpiUtDivide() local 539 Dividend.Full = InDividend; in AcpiUtDivide() 552 ACPI_DIV_64_BY_32 (0, Dividend.Part.Hi, Divisor.Part.Lo, in AcpiUtDivide() 555 ACPI_DIV_64_BY_32 (Partial1, Dividend.Part.Lo, Divisor.Part.Lo, in AcpiUtDivide() 566 NormalizedDividend = Dividend; in AcpiUtDivide() 599 if (Partial3.Part.Lo >= Dividend.Part.Hi) in AcpiUtDivide() 601 if (Partial3.Part.Lo == Dividend.Part.Hi) in AcpiUtDivide() 603 if (Partial2.Part.Lo > Dividend.Part.Lo) in AcpiUtDivide() [all …]
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Support/ |
| H A D | ScaledNumber.h | 139 LLVM_ABI std::pair<uint64_t, int16_t> divide64(uint64_t Dividend, 147 LLVM_ABI std::pair<uint32_t, int16_t> divide32(uint32_t Dividend, 156 std::pair<DigitsT, int16_t> getQuotient(DigitsT Dividend, DigitsT Divisor) { in getQuotient() argument 162 if (!Dividend) in getQuotient() 168 return divide64(Dividend, Divisor); in getQuotient() 169 return divide32(Dividend, Divisor); in getQuotient() 173 inline std::pair<uint32_t, int16_t> getQuotient32(uint32_t Dividend, in getQuotient32() argument 175 return getQuotient(Dividend, Divisor); in getQuotient32() 179 inline std::pair<uint64_t, int16_t> getQuotient64(uint64_t Dividend, in getQuotient64() argument 181 return getQuotient(Dividend, Divisor); in getQuotient64() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | DivRemPairs.cpp | 51 Value *Dividend, *XroundedDownToMultipleOfY; in matchExpandedRem() local 52 if (!match(&I, m_Sub(m_Value(Dividend), m_Value(XroundedDownToMultipleOfY)))) in matchExpandedRem() 60 m_c_Mul(m_CombineAnd(m_IDiv(m_Specific(Dividend), m_Value(Divisor)), in matchExpandedRem() 67 M.Key.Dividend = Dividend; in matchExpandedRem()
|
| /freebsd/sys/contrib/edk2/Include/Library/ |
| H A D | BaseLib.h | 3734 IN UINT64 Dividend, 3757 IN UINT64 Dividend, 3783 IN UINT64 Dividend, 3810 IN UINT64 Dividend, 3841 IN INT64 Dividend,
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
| H A D | MachinePipeliner.h | 676 int positiveModulo(int Dividend, int Divisor) const { in positiveModulo() argument 678 int R = Dividend % Divisor; in positiveModulo()
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | LegalizeVectorOps.cpp | 1717 SDValue Dividend = Node->getOperand(0); in ExpandVP_REM() local 1723 SDValue Div = DAG.getNode(DivOpc, DL, VT, Dividend, Divisor, Mask, EVL); in ExpandVP_REM() 1725 return DAG.getNode(ISD::VP_SUB, DL, VT, Dividend, Mul, Mask, EVL); in ExpandVP_REM()
|
| H A D | TargetLowering.cpp | 8092 SDValue Dividend = DAG.getNode(ISD::BUILD_PAIR, dl, VT, LL, LH); in expandDIVREMByConstant() local 8095 Dividend = DAG.getNode(ISD::SUB, dl, VT, Dividend, Rem); in expandDIVREMByConstant() 8101 SDValue Quotient = DAG.getNode(ISD::MUL, dl, VT, Dividend, in expandDIVREMByConstant() 11618 SDValue Dividend = Node->getOperand(0); in expandREM() local 11622 Result = DAG.getNode(DivRemOpc, dl, VTs, Dividend, Divisor).getValue(1); in expandREM() 11627 SDValue Divide = DAG.getNode(DivOpc, dl, VT, Dividend, Divisor); in expandREM() 11629 Result = DAG.getNode(ISD::SUB, dl, VT, Dividend, Mul); in expandREM()
|
| H A D | DAGCombiner.cpp | 18299 SDValue Dividend = U->getOperand(0); in combineRepeatedFPDivisors() local 18300 if (Dividend != FPOne) { in combineRepeatedFPDivisors() 18301 SDValue NewNode = DAG.getNode(ISD::FMUL, SDLoc(U), VT, Dividend, in combineRepeatedFPDivisors()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineMulDivRem.cpp | 1256 Value *Dividend = Builder.CreateShl( in foldIDivShl() local 1262 return Builder.CreateLShr(Dividend, Z, "", I.isExact()); in foldIDivShl()
|
| /freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | DependenceAnalysis.cpp | 1739 bool isRemainderZero(const SCEVConstant *Dividend, in isRemainderZero() argument 1741 const APInt &ConstDividend = Dividend->getAPInt(); in isRemainderZero()
|
| H A D | ScalarEvolution.cpp | 956 const SCEV *Dividend = SE.getTruncateOrZeroExtend(It, CalculationTy); in BinomialCoefficient() local 959 Dividend = SE.getMulExpr(Dividend, in BinomialCoefficient() 964 const SCEV *DivResult = SE.getUDivExpr(Dividend, SE.getConstant(DivFactor)); in BinomialCoefficient()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/ARM/ |
| H A D | ARMISelLowering.cpp | 20688 const SDValue Dividend = Op->getOperand(0); in LowerDivRem() local 20690 SDValue Div = DAG.getNode(DivOpcode, dl, VT, Dividend, Divisor); in LowerDivRem() 20692 SDValue Rem = DAG.getNode(ISD::SUB, dl, VT, Dividend, Mul); in LowerDivRem()
|