/external/llvm/lib/Support/ |
H A D | ScaledNumber.cpp | 69 uint64_t Quotient = Dividend64 / Divisor; local 72 // If Quotient needs to be shifted, leave the rounding to getAdjusted(). 73 if (Quotient > UINT32_MAX) 74 return getAdjusted<uint32_t>(Quotient, Shift); 77 return getRounded<uint32_t>(Quotient, Shift, Remainder >= getHalf(Divisor)); 103 uint64_t Quotient = Dividend / Divisor; local 107 while (!(Quotient >> 63) && Dividend) { 113 // Get the next bit of Quotient. 114 Quotient <<= 1; 116 Quotient | [all...] |
H A D | APInt.cpp | 1663 APInt *Quotient, APInt *Remainder) 1767 if (Quotient) { 1768 // Set up the Quotient value's memory. 1769 if (Quotient->BitWidth != LHS.BitWidth) { 1770 if (Quotient->isSingleWord()) 1771 Quotient->VAL = 0; 1773 delete [] Quotient->pVal; 1774 Quotient->BitWidth = LHS.BitWidth; 1775 if (!Quotient->isSingleWord()) 1776 Quotient [all...] |
/external/llvm/unittests/Transforms/Utils/ |
H A D | IntegerDivision.cpp | 49 Instruction* Quotient = dyn_cast<Instruction>(cast<User>(Ret)->getOperand(0)); local 50 EXPECT_TRUE(Quotient && Quotient->getOpcode() == Instruction::Sub); 79 Instruction* Quotient = dyn_cast<Instruction>(cast<User>(Ret)->getOperand(0)); local 80 EXPECT_TRUE(Quotient && Quotient->getOpcode() == Instruction::PHI); 170 Instruction* Quotient = dyn_cast<Instruction>(cast<User>(Ret)->getOperand(0)); local 171 EXPECT_TRUE(Quotient && Quotient->getOpcode() == Instruction::Sub); 200 Instruction* Quotient local [all...] |
/external/llvm/lib/Transforms/Utils/ |
H A D | BypassSlowDivision.cpp | 39 PHINode *Quotient; member in struct:__anon12573::DivPhiNodes 43 : Quotient(InQuotient), Remainder(InRemainder) {} 207 J->replaceAllUsesWith(Value.Quotient);
|
H A D | IntegerDivision.cpp | 82 // Remainder = Dividend - Quotient*Divisor 89 Value *Quotient = Builder.CreateUDiv(Dividend, Divisor); local 90 Value *Product = Builder.CreateMul(Divisor, Quotient); 93 if (Instruction *UDiv = dyn_cast<Instruction>(Quotient)) 455 Value *Quotient = generateSignedDivisionCode(Div->getOperand(0), local 457 Div->replaceAllUsesWith(Quotient); 472 Value *Quotient = generateUnsignedDivisionCode(Div->getOperand(0), local 475 Div->replaceAllUsesWith(Quotient);
|
/external/mesa3d/src/gallium/drivers/radeon/ |
H A D | AMDGPUISelLowering.cpp | 223 // Quotient = mulhu(Tmp0, Num) 224 SDValue Quotient = DAG.getNode(ISD::MULHU, DL, VT, Tmp0, Num); local 226 // Num_S_Remainder = Quotient * Den 227 SDValue Num_S_Remainder = DAG.getNode(ISD::UMULO, DL, VT, Quotient, Den); 249 // Quotient_A_One = Quotient + 1 250 SDValue Quotient_A_One = DAG.getNode(ISD::ADD, DL, VT, Quotient, 253 // Quotient_S_One = Quotient - 1 254 SDValue Quotient_S_One = DAG.getNode(ISD::SUB, DL, VT, Quotient, 257 // Div = (Tmp1 == 0 ? Quotient : Quotient_A_One) 259 Quotient, Quotient_A_On [all...] |
/external/llvm/lib/Transforms/InstCombine/ |
H A D | InstCombineMulDivRem.cpp | 91 /// \brief True if C2 is a multiple of C1. Quotient contains C2/C1. 92 static bool IsMultiple(const APInt &C1, const APInt &C2, APInt &Quotient, argument 107 APInt::sdivrem(C1, C2, Quotient, Remainder); 109 APInt::udivrem(C1, C2, Quotient, Remainder); 821 APInt Quotient(C1->getBitWidth(), /*Val=*/0ULL, IsSigned); 824 if (IsMultiple(*C2, *C1, Quotient, IsSigned)) { 826 I.getOpcode(), X, ConstantInt::get(X->getType(), Quotient)); 832 if (IsMultiple(*C1, *C2, Quotient, IsSigned)) { 834 Instruction::Mul, X, ConstantInt::get(X->getType(), Quotient)); 847 APInt Quotient(C [all...] |
H A D | InstructionCombining.cpp | 1054 APInt Quotient(Scale), Remainder(Scale); // Init ensures right bitwidth. 1055 APInt::sdivrem(CI->getValue(), Scale, Quotient, Remainder); 1060 Op = ConstantInt::get(CI->getType(), Quotient);
|
/external/llvm/include/llvm/ADT/ |
H A D | APInt.h | 181 unsigned rhsWords, APInt *Quotient, APInt *Remainder); 942 static void udivrem(const APInt &LHS, const APInt &RHS, APInt &Quotient, 945 static void sdivrem(const APInt &LHS, const APInt &RHS, APInt &Quotient,
|
/external/llvm/lib/Analysis/ |
H A D | ScalarEvolution.cpp | 695 // Computes the Quotient and Remainder of the division of Numerator by 698 const SCEV *Denominator, const SCEV **Quotient, 707 *Quotient = D.One; 713 *Quotient = D.Zero; 720 *Quotient = Numerator; 728 *Quotient = Numerator; 730 divide(SE, *Quotient, Op, &Q, &R); 731 *Quotient = Q; 736 *Quotient = D.Zero; 746 *Quotient 697 divide(ScalarEvolution &SE, const SCEV *Numerator, const SCEV *Denominator, const SCEV **Quotient, const SCEV **Remainder) argument 916 const SCEV *Denominator, *Quotient, *Remainder, *Zero, *One; member in struct:__anon11729::SCEVDivision [all...] |
/external/llvm/lib/Target/AMDGPU/ |
H A D | AMDGPUISelLowering.cpp | 924 // which is s0.f = Quotient, s1.f = Denominator, s2.f = Numerator. The 1776 // Quotient = mulhu(Tmp0, Num) 1777 SDValue Quotient = DAG.getNode(ISD::MULHU, DL, VT, Tmp0, Num); local 1779 // Num_S_Remainder = Quotient * Den 1780 SDValue Num_S_Remainder = DAG.getNode(ISD::MUL, DL, VT, Quotient, Den); 1802 // Quotient_A_One = Quotient + 1 1803 SDValue Quotient_A_One = DAG.getNode(ISD::ADD, DL, VT, Quotient, 1806 // Quotient_S_One = Quotient - 1 1807 SDValue Quotient_S_One = DAG.getNode(ISD::SUB, DL, VT, Quotient, 1810 // Div = (Tmp1 == 0 ? Quotient [all...] |
/external/llvm/lib/Transforms/Scalar/ |
H A D | LoopStrengthReduce.cpp | 3590 if (const SCEV *Quotient = getExactSDiv(AR, FactorS, SE, true)) { 3593 F.ScaledReg = Quotient;
|