summaryrefslogtreecommitdiff
path: root/primesieve.c
diff options
context:
space:
mode:
authorMarco Bodrato <bodrato@mail.dm.unipi.it>2020-03-15 18:26:21 +0100
committerMarco Bodrato <bodrato@mail.dm.unipi.it>2020-03-15 18:26:21 +0100
commitc07e396277eab29d644a37f02b2fdcfbc4b68b1c (patch)
tree7c9f4e07a59b64247cfcd6608376bde5de5a7b5b /primesieve.c
parent12d31d5fab8cce52120519328f844f7f5536c0c3 (diff)
downloadgmp-c07e396277eab29d644a37f02b2fdcfbc4b68b1c.tar.gz
: Use one less variable to loop on primes.
Diffstat (limited to 'primesieve.c')
-rw-r--r--primesieve.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/primesieve.c b/primesieve.c
index 8aa8b7ed2..279e8d367 100644
--- a/primesieve.c
+++ b/primesieve.c
@@ -313,7 +313,7 @@ block_resieve (mp_ptr bit_array, mp_size_t limbs, mp_limb_t offset,
mp_srcptr sieve)
{
mp_size_t bits, off = offset;
- mp_limb_t mask, index, i;
+ mp_limb_t mask, i;
ASSERT (limbs > 0);
ASSERT (offset >= GMP_LIMB_BITS);
@@ -325,10 +325,9 @@ block_resieve (mp_ptr bit_array, mp_size_t limbs, mp_limb_t offset,
ASSERT (i < GMP_LIMB_BITS);
mask = CNST_LIMB(1) << i;
- index = 0;
do {
++i;
- if ((sieve[index] & mask) == 0)
+ if ((*sieve & mask) == 0)
{
mp_size_t step, lindex;
mp_limb_t lmask;
@@ -371,7 +370,7 @@ block_resieve (mp_ptr bit_array, mp_size_t limbs, mp_limb_t offset,
};
}
mask = mask << 1 | mask >> (GMP_LIMB_BITS-1);
- index += mask & 1;
+ sieve += mask & 1;
} while (1);
}