summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMarco Bodrato <bodrato@mail.dm.unipi.it>2022-02-27 15:10:38 +0100
committerMarco Bodrato <bodrato@mail.dm.unipi.it>2022-02-27 15:10:38 +0100
commitd66cb8d335b3e67ff1a198bfbceb3fdd650c1156 (patch)
tree3dd9275af5927932b32c14e5a308db0feaf828d8 /tests
parent13d1e067ee179edad60c743cd66fdfdfc72e7102 (diff)
downloadgmp-d66cb8d335b3e67ff1a198bfbceb3fdd650c1156.tar.gz
t-mulmod_bknp1.c: Better coverage
Diffstat (limited to 'tests')
-rw-r--r--tests/mpn/t-mulmod_bknp1.c13
-rw-r--r--tests/mpn/t-sqrmod_bknp1.c2
2 files changed, 11 insertions, 4 deletions
diff --git a/tests/mpn/t-mulmod_bknp1.c b/tests/mpn/t-mulmod_bknp1.c
index f07b85489..93da1eb15 100644
--- a/tests/mpn/t-mulmod_bknp1.c
+++ b/tests/mpn/t-mulmod_bknp1.c
@@ -119,7 +119,7 @@ main (int argc, char **argv)
unsigned size_min;
unsigned size_range;
unsigned k;
- mp_size_t an,bn,rn,n;
+ mp_size_t rn, n;
mp_size_t itch;
mp_limb_t p_before, p_after, s_before, s_after;
@@ -137,7 +137,14 @@ main (int argc, char **argv)
if ((GMP_NUMB_MAX % k != 0) && (rn % 3 == 0))
n = rn / (k = 3);
- mpn_random2 (ap, rn + 1);
+ if (test == 0)
+ {
+ mpn_random2 (ap, n);
+ mpn_add_1 (ap + n, ap, n, 1); /* {ap,an} = -1 mod B+1 */
+ MPN_ZERO (ap + 2 * n, rn - 2 * n + 1);
+ }
+ else
+ mpn_random2 (ap, rn + 1);
mpn_random2 (bp, rn + 1);
bp [rn] &= 1;
@@ -153,7 +160,7 @@ main (int argc, char **argv)
s_before = scratch[-1];
s_after = scratch[itch];
- mpn_mulmod_bknp1 ( pp, ap, bp, n, k, scratch);
+ mpn_mulmod_bknp1 ( pp, ap, bp, n, k, scratch);
ref_mulmod_bnp1 (refp, ap, bp, rn);
if (pp[-1] != p_before || pp[rn + 1] != p_after
|| scratch[-1] != s_before || scratch[itch] != s_after
diff --git a/tests/mpn/t-sqrmod_bknp1.c b/tests/mpn/t-sqrmod_bknp1.c
index 37b5cfdf5..162092505 100644
--- a/tests/mpn/t-sqrmod_bknp1.c
+++ b/tests/mpn/t-sqrmod_bknp1.c
@@ -118,7 +118,7 @@ main (int argc, char **argv)
unsigned size_min;
unsigned size_range;
unsigned k;
- mp_size_t an,rn,n;
+ mp_size_t rn, n;
mp_size_t itch;
mp_limb_t p_before, p_after, s_before, s_after;