Lines Matching refs:exponent
105 /* Begin a loop that increments the exponent, until we find a power of 2
108 unsigned exponent;
109 for (exponent = 0; ; exponent++) {
110 /* Quotient and remainder is from previous exponent; compute it for this
111 * exponent.
123 /* We're done if this exponent works for the round_up algorithm.
124 * Note that exponent may be larger than the maximum shift supported,
127 if ((exponent + extra_shift >= ceil_log_2_D) ||
128 (D - remainder) <= ((uint64_t)1 << (exponent + extra_shift)))
131 /* Set magic_down if we have not set it yet and this exponent works for
135 remainder <= ((uint64_t)1 << (exponent + extra_shift))) {
138 down_exponent = exponent;
142 if (exponent < ceil_log_2_D) {
146 result.post_shift = exponent;
191 unsigned exponent = SINT_BITS - 1;
192 const uint64_t initial_power_of_2 = (uint64_t)1 << exponent;
210 /* Update the exponent */
211 exponent++;
229 /* Keep going as long as (2**exponent) / abs_d <= delta */
235 result.shift = exponent - SINT_BITS;