Lines Matching defs:divisor
118 // quotient = (high << kDigitBits + low - remainder) / divisor
119 static inline digit_t digit_div(digit_t high, digit_t low, digit_t divisor,
122 DCHECK(high < divisor);
123 DCHECK(divisor != 0);
128 __asm__("divq %[divisor]"
131 // Inputs: put {high} into rdx, {low} into rax, and {divisor} into
133 : "d"(high), "a"(low), [divisor] "rm"(divisor));
139 __asm__("divl %[divisor]"
142 // Inputs: put {high} into edx, {low} into eax, and {divisor} into
144 : "d"(high), "a"(low), [divisor] "rm"(divisor));
149 int s = CountLeadingZeros(divisor);
151 DCHECK(s != kDigitBits); // {divisor} is not 0.
153 divisor <<= s;
155 digit_t vn1 = divisor >> kHalfDigitBits;
156 digit_t vn0 = divisor & kHalfDigitMask;
179 digit_t un21 = un32 * kHalfDigitBase + un1 - q1 * divisor;
189 *remainder = (un21 * kHalfDigitBase + un0 - q0 * divisor) >> s;