Lines Matching refs:GMP_NUMB_BITS
59 usize = (MPFR_PREC(u) - 1) / GMP_NUMB_BITS + 1;
60 vsize = (MPFR_PREC(v) - 1) / GMP_NUMB_BITS + 1;
81 if ((unsigned long) vsize * GMP_NUMB_BITS < n_bits)
83 /* check if low min(PREC(u), n_bits) - (vsize * GMP_NUMB_BITS)
85 unsigned long remains = n_bits - (vsize * GMP_NUMB_BITS);
87 while (k >= 0 && remains >= GMP_NUMB_BITS && !up[k])
90 remains -= GMP_NUMB_BITS;
93 or remains < GMP_NUMB_BITS: check high bits from up[k]
95 if (k >= 0 && (((remains < GMP_NUMB_BITS) &&
96 (up[k] >> (GMP_NUMB_BITS - remains))) ||
97 (remains >= GMP_NUMB_BITS && up[k])))
111 Otherwise, if n_bits > size * GMP_NUMB_BITS, reduce n_bits to
112 size * GMP_NUMB_BITS, since the extra low bits of one of the
114 if ((unsigned long) size > 1 + (n_bits - 1) / GMP_NUMB_BITS)
115 size = 1 + (n_bits - 1) / GMP_NUMB_BITS;
116 else if (n_bits > (unsigned long) size * GMP_NUMB_BITS)
117 n_bits = size * GMP_NUMB_BITS;
122 for (i = size - 1; i > 0 && n_bits >= GMP_NUMB_BITS; i--)
126 n_bits -= GMP_NUMB_BITS;
129 /* now either i=0 or n_bits<GMP_NUMB_BITS */
131 /* since n_bits <= size * GMP_NUMB_BITS before the above for-loop,
132 we have the invariant n_bits <= (i+1) * GMP_NUMB_BITS, thus
133 we always have n_bits <= GMP_NUMB_BITS here */
134 MPFR_ASSERTD(n_bits <= GMP_NUMB_BITS);
136 if (n_bits & (GMP_NUMB_BITS - 1))
137 return (up[i] >> (GMP_NUMB_BITS - (n_bits & (GMP_NUMB_BITS - 1))) ==
138 vp[i] >> (GMP_NUMB_BITS - (n_bits & (GMP_NUMB_BITS - 1))));