Home | History | Annotate | Download | only in fpu

Lines Matching refs:bit

130  * zero bit at the top of x.  Doing so means that q is not going to acquire
131 * a 1 bit in the first trip around the loop (since x0 < 2^NBITS). If the
166 * bit at a time, from the top down, and is not used itself in the loop
168 * in an integer, one word at a time, which saves a bit of work. Also,
169 * since 1 << k is always a `new' bit in q, 1 << k and 1 << (k+1) are
181 * Furthermore, we can prove with a bit of work that x never exceeds y by
188 * In fact, we want even one more bit (for a carry, to avoid compares), or
196 u_int bit, q, tt;
273 * set the top bit in q, so we can do that manually and start
274 * the loop at the next bit down instead. We must be sure to
278 * save work. To avoid `(1 << 31) << 1', we also do the top bit
281 * The calculation `t = y + bit' breaks down into `t0 = y0, ...,
282 * t3 = y3, t? |= bit' for the appropriate word. Since the bit
290 bit = FP_1;
292 /* if (x >= (t0 = y0 | bit)) { */ /* always true */
293 q = bit;
294 x0 -= bit;
295 y0 = bit << 1;
298 while ((bit >>= 1) != 0) { /* for remaining bits in q0 */
300 t0 = y0 | bit; /* t = y + bit */
303 q |= bit; /* q += bit */
304 y0 |= bit << 1; /* y += bit << 1 */
316 bit = 1 << 31;
318 t1 = bit;
323 q = bit; /* q += bit */
324 y0 |= 1; /* y += bit << 1 */
327 while ((bit >>= 1) != 0) { /* for remaining bits in q1 */
329 t1 = y1 | bit;
334 q |= bit;
335 y1 |= bit << 1;
347 bit = 1 << 31;
349 t2 = bit;
355 q = bit;
359 while ((bit >>= 1) != 0) {
361 t2 = y2 | bit;
367 q |= bit;
368 y2 |= bit << 1;
380 bit = 1 << 31;
382 t3 = bit;
389 q = bit;
393 while ((bit >>= 1) != 0) {
395 t3 = y3 | bit;
402 q |= bit;
403 y3 |= bit << 1;