diff options
author | Marco Bodrato <bodrato@mail.dm.unipi.it> | 2014-05-15 18:51:26 +0200 |
---|---|---|
committer | Marco Bodrato <bodrato@mail.dm.unipi.it> | 2014-05-15 18:51:26 +0200 |
commit | 562dbf041a887e1238ac4203fab3479ee62110b0 (patch) | |
tree | eded00dede60cf611962507a0d9f60e5ae94f60c /gen-psqr.c | |
parent | 736f96b1042ed1718d87fa37661cf42f9070b265 (diff) | |
download | gmp-562dbf041a887e1238ac4203fab3479ee62110b0.tar.gz |
gen-fib.c: use mpz_setbit, gen-psqr.c: skip even numbers when looking for primes
Diffstat (limited to 'gen-psqr.c')
-rw-r--r-- | gen-psqr.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/gen-psqr.c b/gen-psqr.c index 31977cda1..6554b911e 100644 --- a/gen-psqr.c +++ b/gen-psqr.c @@ -174,8 +174,7 @@ f_cmp_fraction (const void *parg, const void *qarg) int mul_2exp_mod (int n, int p, int m) { - int i; - for (i = 0; i < p; i++) + while (--p >= 0) n = (2 * n) % m; return n; } @@ -289,7 +288,7 @@ generate_mod (int limb_bits, int nail_bits) mpz_init (q); mpz_init (r); - for (i = 3; i <= max_divisor; i++) + for (i = 3; i <= max_divisor; i+=2) { if (! isprime (i)) continue; @@ -341,7 +340,7 @@ generate_mod (int limb_bits, int nail_bits) /* one copy of each small prime */ mpz_set_ui (pp, 1L); - for (i = 3; i <= max_divisor; i++) + for (i = 3; i <= max_divisor; i+=2) { if (! isprime (i)) continue; |