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 *generatedUnsignedRemainderCode(Value *Dividend, Value *Divisor, in generatedUnsignedRemainderCode() argument
82 Dividend = Builder.CreateFreeze(Dividend); in generatedUnsignedRemainderCode()
84 Value *Quotient = Builder.CreateUDiv(Dividend, Divisor); in generatedUnsignedRemainderCode()
86 Value *Remainder = Builder.CreateSub(Dividend, Product); in generatedUnsignedRemainderCode()
99 static Value *generateSignedDivisionCode(Value *Dividend, Value *Divisor, in generateSignedDivisionCode() argument
[all …]
H A DBypassSlowDivision.cpp155 Value *Dividend = SlowDivOrRem->getOperand(0); in getReplacement() local
157 DivRemMapKey Key(isSignedOp(), Dividend, Divisor); in getReplacement()
266 Value *Dividend = SlowDivOrRem->getOperand(0); in createSlowBB() local
270 DivRemPair.Quotient = Builder.CreateSDiv(Dividend, Divisor); in createSlowBB()
271 DivRemPair.Remainder = Builder.CreateSRem(Dividend, Divisor); in createSlowBB()
273 DivRemPair.Quotient = Builder.CreateUDiv(Dividend, Divisor); in createSlowBB()
274 DivRemPair.Remainder = Builder.CreateURem(Dividend, Divisor); in createSlowBB()
290 Value *Dividend = SlowDivOrRem->getOperand(0); in createFastBB() local
295 Builder.CreateCast(Instruction::Trunc, Dividend, BypassType); in createFastBB()
352 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.h138 std::pair<uint64_t, int16_t> divide64(uint64_t Dividend, uint64_t Divisor);
145 std::pair<uint32_t, int16_t> divide32(uint32_t Dividend, uint32_t Divisor);
153 std::pair<DigitsT, int16_t> getQuotient(DigitsT Dividend, DigitsT Divisor) { in getQuotient() argument
159 if (!Dividend) in getQuotient()
165 return divide64(Dividend, Divisor); in getQuotient()
166 return divide32(Dividend, Divisor); in getQuotient()
170 inline std::pair<uint32_t, int16_t> getQuotient32(uint32_t Dividend, in getQuotient32() argument
172 return getQuotient(Dividend, Divisor); in getQuotient32()
176 inline std::pair<uint64_t, int16_t> getQuotient64(uint64_t Dividend, in getQuotient64() argument
178 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/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DMachinePipeliner.h488 int positiveModulo(int Dividend, int Divisor) const { in positiveModulo() argument
490 int R = Dividend % Divisor; in positiveModulo()
/freebsd/sys/contrib/edk2/Include/Library/
H A DBaseLib.h3699 IN UINT64 Dividend,
3723 IN UINT64 Dividend,
3750 IN UINT64 Dividend,
3778 IN UINT64 Dividend,
3810 IN INT64 Dividend,
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DLegalizeVectorOps.cpp1547 SDValue Dividend = Node->getOperand(0); in ExpandVP_REM() local
1553 SDValue Div = DAG.getNode(DivOpc, DL, VT, Dividend, Divisor, Mask, EVL); in ExpandVP_REM()
1555 return DAG.getNode(ISD::VP_SUB, DL, VT, Dividend, Mul, Mask, EVL); in ExpandVP_REM()
H A DTargetLowering.cpp7873 SDValue Dividend = DAG.getNode(ISD::BUILD_PAIR, dl, VT, LL, LH); in expandDIVREMByConstant() local
7876 Dividend = DAG.getNode(ISD::SUB, dl, VT, Dividend, Rem); in expandDIVREMByConstant()
7882 SDValue Quotient = DAG.getNode(ISD::MUL, dl, VT, Dividend, in expandDIVREMByConstant()
11111 SDValue Dividend = Node->getOperand(0); in expandREM() local
11115 Result = DAG.getNode(DivRemOpc, dl, VTs, Dividend, Divisor).getValue(1); in expandREM()
11120 SDValue Divide = DAG.getNode(DivOpc, dl, VT, Dividend, Divisor); in expandREM()
11122 Result = DAG.getNode(ISD::SUB, dl, VT, Dividend, Mul); in expandREM()
H A DDAGCombiner.cpp17298 SDValue Dividend = U->getOperand(0); in combineRepeatedFPDivisors() local
17299 if (Dividend != FPOne) { in combineRepeatedFPDivisors()
17300 SDValue NewNode = DAG.getNode(ISD::FMUL, SDLoc(U), VT, Dividend, in combineRepeatedFPDivisors()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineMulDivRem.cpp1148 Value *Dividend = Builder.CreateShl( in foldIDivShl() local
1154 return Builder.CreateLShr(Dividend, Z, "", I.isExact()); in foldIDivShl()
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DDependenceAnalysis.cpp1720 bool isRemainderZero(const SCEVConstant *Dividend, in isRemainderZero() argument
1722 const APInt &ConstDividend = Dividend->getAPInt(); in isRemainderZero()
H A DScalarEvolution.cpp950 const SCEV *Dividend = SE.getTruncateOrZeroExtend(It, CalculationTy); in BinomialCoefficient() local
953 Dividend = SE.getMulExpr(Dividend, in BinomialCoefficient()
958 const SCEV *DivResult = SE.getUDivExpr(Dividend, SE.getConstant(DivFactor)); in BinomialCoefficient()
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMISelLowering.cpp20754 const SDValue Dividend = Op->getOperand(0); in LowerDivRem() local
20756 SDValue Div = DAG.getNode(DivOpcode, dl, VT, Dividend, Divisor); in LowerDivRem()
20758 SDValue Rem = DAG.getNode(ISD::SUB, dl, VT, Dividend, Mul); in LowerDivRem()