Home | History | Annotate | Download | only in dist

Lines Matching refs:GMP_LIMB_BITS

55 primesieve_size (mp_limb_t n) { return n_to_bit(n) / GMP_LIMB_BITS + 1; }
58 #if GMP_LIMB_BITS > 61
60 #if GMP_LIMB_BITS == 64
73 #if GMP_LIMB_BITS > 30
75 #if GMP_LIMB_BITS == 32
85 #if GMP_LIMB_BITS > 15
89 #if GMP_LIMB_BITS > 7
102 if (off < GMP_LIMB_BITS) { \
103 m1 = (M1 >> off) | (M2 << (GMP_LIMB_BITS - off)); \
104 if (off <= BITS - GMP_LIMB_BITS) { \
105 m2 = M1 << (BITS - GMP_LIMB_BITS - off) \
109 m2 = M1 >> (off + GMP_LIMB_BITS - BITS); \
113 | M2 >> (off - GMP_LIMB_BITS); \
115 | M1 >> (off + GMP_LIMB_BITS - BITS); \
123 if (off <= GMP_LIMB_BITS) { \
124 m1 = M2 << (GMP_LIMB_BITS - off); \
125 m2 = M3 << (GMP_LIMB_BITS - off); \
126 if (off != GMP_LIMB_BITS) { \
130 if (off <= BITS - 2 * GMP_LIMB_BITS) { \
131 m3 = M1 << (BITS - 2 * GMP_LIMB_BITS - off) \
134 m2 |= M1 << (BITS - GMP_LIMB_BITS - off); \
135 m3 = M1 >> (off + 2 * GMP_LIMB_BITS - BITS); \
137 } else if (off < 2 *GMP_LIMB_BITS) { \
138 m1 = M2 >> (off - GMP_LIMB_BITS) \
139 | M3 << (2 * GMP_LIMB_BITS - off); \
140 if (off <= BITS - GMP_LIMB_BITS) { \
141 m2 = M3 >> (off - GMP_LIMB_BITS) \
142 | M1 << (BITS - GMP_LIMB_BITS - off); \
143 m3 = M2 << (BITS - GMP_LIMB_BITS - off); \
144 if (off != BITS - GMP_LIMB_BITS) { \
145 m3 |= M1 >> (off + 2 * GMP_LIMB_BITS - BITS); \
150 | M1 >> (GMP_LIMB_BITS - BITS + off); \
151 m3 = M2 >> (GMP_LIMB_BITS - BITS + off); \
155 | M3 >> (off - 2 * GMP_LIMB_BITS); \
157 | M1 >> (off + GMP_LIMB_BITS - BITS); \
159 | M2 >> (off + GMP_LIMB_BITS - BITS); \
168 __tmp = m1 >> (2 * GMP_LIMB_BITS - BITS); \
169 m1 = (m1 << (BITS - GMP_LIMB_BITS)) | m2; \
176 __tmp = m2 >> (3 * GMP_LIMB_BITS - BITS); \
177 m2 = m2 << (BITS - GMP_LIMB_BITS * 2) \
178 | m1 >> (3 * GMP_LIMB_BITS - BITS); \
179 m1 = m1 << (BITS - GMP_LIMB_BITS * 2) | m3; \
253 limbs = bits / GMP_LIMB_BITS;
259 if ((bits + 1) % GMP_LIMB_BITS != 0)
260 bit_array[limbs] |= MP_LIMB_T_MAX << ((bits + 1) % GMP_LIMB_BITS);
265 ASSERT (i < GMP_LIMB_BITS);
267 if (n_to_bit (SEED_LIMIT + 1) < GMP_LIMB_BITS)
287 maskrot = step % GMP_LIMB_BITS;
289 lmask = CNST_LIMB(1) << (lindex % GMP_LIMB_BITS);
291 bit_array[lindex / GMP_LIMB_BITS] |= lmask;
292 lmask = lmask << maskrot | lmask >> (GMP_LIMB_BITS - maskrot);
299 lmask = CNST_LIMB(1) << (lindex % GMP_LIMB_BITS);
301 bit_array[lindex / GMP_LIMB_BITS] |= lmask;
302 lmask = lmask << maskrot | lmask >> (GMP_LIMB_BITS - maskrot);
305 mask = mask << 1 | mask >> (GMP_LIMB_BITS-1);
319 ASSERT (offset >= GMP_LIMB_BITS);
321 bits = limbs * GMP_LIMB_BITS - 1;
323 i = fill_bitpattern (bit_array, limbs, offset - GMP_LIMB_BITS);
325 ASSERT (i < GMP_LIMB_BITS);
346 maskrot = step % GMP_LIMB_BITS;
353 lmask = CNST_LIMB(1) << (lindex % GMP_LIMB_BITS);
355 bit_array[lindex / GMP_LIMB_BITS] |= lmask;
356 lmask = lmask << maskrot | lmask >> (GMP_LIMB_BITS - maskrot);
367 lmask = CNST_LIMB(1) << (lindex % GMP_LIMB_BITS);
369 bit_array[lindex / GMP_LIMB_BITS] |= lmask;
370 lmask = lmask << maskrot | lmask >> (GMP_LIMB_BITS - maskrot);
373 mask = mask << 1 | mask >> (GMP_LIMB_BITS-1);
405 size = bits / GMP_LIMB_BITS + 1;
410 first_block_primesieve (bit_array, id_to_n (off * GMP_LIMB_BITS));
412 block_resieve (bit_array + off, BLOCK_SIZE, off * GMP_LIMB_BITS, bit_array);
418 if ((bits + 1) % GMP_LIMB_BITS != 0)
419 bit_array[size-1] |= MP_LIMB_T_MAX << ((bits + 1) % GMP_LIMB_BITS);
421 return size * GMP_LIMB_BITS - mpn_popcount (bit_array, size);