Home
last modified time | relevance | path

Searched refs:Dividend (Results 1 – 16 of 16) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/Support/
H A DScaledNumber.cpp57 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 DIntegerDivision.cpp32 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 DBypassSlowDivision.cpp154 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 DBypassSlowDivision.h32 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 Dutmath.c446 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 DScaledNumber.h139 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 DDivRemPairs.cpp51 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 DBaseLib.h3734 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 DMachinePipeliner.h676 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 DLegalizeVectorOps.cpp1717 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 DTargetLowering.cpp8092 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 DDAGCombiner.cpp18299 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 DInstCombineMulDivRem.cpp1256 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 DDependenceAnalysis.cpp1739 bool isRemainderZero(const SCEVConstant *Dividend, in isRemainderZero() argument
1741 const APInt &ConstDividend = Dividend->getAPInt(); in isRemainderZero()
H A DScalarEvolution.cpp956 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 DARMISelLowering.cpp20688 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()