diff options
author | Kevin Ryde <user42@zip.com.au> | 2002-05-25 02:32:21 +0200 |
---|---|---|
committer | Kevin Ryde <user42@zip.com.au> | 2002-05-25 02:32:21 +0200 |
commit | a4a26dc57e985fc37c3290916b306807edd61ebf (patch) | |
tree | b5fc41a00ab075bf77535e8a5a2641d066332738 /mpz/powm.c | |
parent | da46cb73a525df4e8ed549ffb0a876b309c873e9 (diff) | |
download | gmp-a4a26dc57e985fc37c3290916b306807edd61ebf.tar.gz |
* mpz/powm.c (redc): Nailify q.
Diffstat (limited to 'mpz/powm.c')
-rw-r--r-- | mpz/powm.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/mpz/powm.c b/mpz/powm.c index af5df3741..5ef678d96 100644 --- a/mpz/powm.c +++ b/mpz/powm.c @@ -41,11 +41,13 @@ redc (mp_ptr cp, mp_srcptr mp, mp_size_t n, mp_limb_t Nprim, mp_ptr tp) mp_limb_t q; mp_size_t j; + ASSERT_MPN (tp, 2*n); + tp[2 * n] = 0; /* carry guard */ for (j = 0; j < n; j++) { - q = tp[0] * Nprim; + q = (tp[0] * Nprim) & GMP_NUMB_MASK; cy = mpn_addmul_1 (tp, mp, n, q); mpn_incr_u (tp + n, cy); tp++; |