diff options
author | Torbjorn Granlund <tege@gmplib.org> | 2009-05-09 22:02:39 +0200 |
---|---|---|
committer | Torbjorn Granlund <tege@gmplib.org> | 2009-05-09 22:02:39 +0200 |
commit | 294e9ec0c1106924aa37c049019f7fb3e2ffc803 (patch) | |
tree | 2ccec40a911429cc19a4440e75aacb0111920cc8 /tests/mpz | |
parent | 0c4f76ba0680251d8be5251baae07434523521f0 (diff) | |
download | gmp-294e9ec0c1106924aa37c049019f7fb3e2ffc803.tar.gz |
Invoke GMP_CHECK_FORMAT for many results.
Diffstat (limited to 'tests/mpz')
-rw-r--r-- | tests/mpz/reuse.c | 83 | ||||
-rw-r--r-- | tests/mpz/t-pow.c | 2 | ||||
-rw-r--r-- | tests/mpz/t-powm.c | 3 | ||||
-rw-r--r-- | tests/mpz/t-powm_ui.c | 3 | ||||
-rw-r--r-- | tests/mpz/t-root.c | 8 | ||||
-rw-r--r-- | tests/mpz/t-sqrtrem.c | 3 |
6 files changed, 100 insertions, 2 deletions
diff --git a/tests/mpz/reuse.c b/tests/mpz/reuse.c index 7ad66f22a..257e9abfa 100644 --- a/tests/mpz/reuse.c +++ b/tests/mpz/reuse.c @@ -250,14 +250,17 @@ main (int argc, char **argv) continue; (dss_funcs[i]) (ref1, in1, in2); + MPZ_CHECK_FORMAT (ref1); mpz_set (res1, in1); (dss_funcs[i]) (res1, res1, in2); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL (dss, i, in1, in2, NULL); mpz_set (res1, in2); (dss_funcs[i]) (res1, in1, res1); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL (dss, i, in1, in2, NULL); } @@ -270,24 +273,34 @@ main (int argc, char **argv) continue; (ddss_div_funcs[i]) (ref1, ref2, in1, in2); + MPZ_CHECK_FORMAT (ref1); + MPZ_CHECK_FORMAT (ref2); mpz_set (res1, in1); (ddss_div_funcs[i]) (res1, res2, res1, in2); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0) FAIL (ddss_div, i, in1, in2, NULL); mpz_set (res2, in1); (ddss_div_funcs[i]) (res1, res2, res2, in2); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0) FAIL (ddss_div, i, in1, in2, NULL); mpz_set (res1, in2); (ddss_div_funcs[i]) (res1, res2, in1, res1); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0) FAIL (ddss_div, i, in1, in2, NULL); mpz_set (res2, in2); (ddss_div_funcs[i]) (res1, res2, in1, res2); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0) FAIL (ddss_div, i, in1, in2, NULL); } @@ -301,9 +314,11 @@ main (int argc, char **argv) continue; (ds_funcs[i]) (ref1, in1); + MPZ_CHECK_FORMAT (ref1); mpz_set (res1, in1); (ds_funcs[i]) (res1, res1); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL (ds, i, in1, in2, NULL); } @@ -327,9 +342,11 @@ main (int argc, char **argv) in2i %= 0x10; (dsi_funcs[i]) (ref1, in1, in2i); + MPZ_CHECK_FORMAT (ref1); mpz_set (res1, in1); (dsi_funcs[i]) (res1, res1, in2i); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL (dsi, i, in1, in2, NULL); } @@ -339,9 +356,11 @@ main (int argc, char **argv) for (i = 0; i < sizeof (dsi_div_funcs) / sizeof (dsi_div_funcs); i++) { r1 = (dsi_div_funcs[i]) (ref1, in1, in2i); + MPZ_CHECK_FORMAT (ref1); mpz_set (res1, in1); r2 = (dsi_div_funcs[i]) (res1, res1, in2i); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0 || r1 != r2) FAIL (dsi_div, i, in1, in2, NULL); } @@ -349,14 +368,17 @@ main (int argc, char **argv) for (i = 0; i < sizeof (ddsi_div_funcs) / sizeof (ddsi_div_funcs); i++) { r1 = (ddsi_div_funcs[i]) (ref1, ref2, in1, in2i); + MPZ_CHECK_FORMAT (ref1); mpz_set (res1, in1); r2 = (ddsi_div_funcs[i]) (res1, res2, res1, in2i); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0 || r1 != r2) FAIL (ddsi_div, i, in1, in2, NULL); mpz_set (res2, in1); (ddsi_div_funcs[i]) (res1, res2, res2, in2i); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0 || r1 != r2) FAIL (ddsi_div, i, in1, in2, NULL); } @@ -365,14 +387,20 @@ main (int argc, char **argv) if (mpz_sgn (in1) >= 0) { mpz_sqrtrem (ref1, ref2, in1); + MPZ_CHECK_FORMAT (ref1); + MPZ_CHECK_FORMAT (ref2); mpz_set (res1, in1); mpz_sqrtrem (res1, res2, res1); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0) FAIL2 (mpz_sqrtrem, in1, NULL, NULL); mpz_set (res2, in1); mpz_sqrtrem (res1, res2, res2); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0) FAIL2 (mpz_sqrtrem, in1, NULL, NULL); } @@ -380,9 +408,11 @@ main (int argc, char **argv) if (mpz_sgn (in1) >= 0) { mpz_root (ref1, in1, in2i % 0x1000 + 1); + MPZ_CHECK_FORMAT (ref1); mpz_set (res1, in1); mpz_root (res1, res1, in2i % 0x1000 + 1); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL2 (mpz_root, in1, in2, NULL); } @@ -390,14 +420,20 @@ main (int argc, char **argv) if (mpz_sgn (in1) >= 0) { mpz_rootrem (ref1, ref2, in1, in2i % 0x1000 + 1); + MPZ_CHECK_FORMAT (ref1); + MPZ_CHECK_FORMAT (ref2); mpz_set (res1, in1); mpz_rootrem (res1, res2, res1, in2i % 0x1000 + 1); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0) FAIL2 (mpz_rootrem, in1, in2, NULL); mpz_set (res2, in1); mpz_rootrem (res1, res2, res2, in2i % 0x1000 + 1); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0) FAIL2 (mpz_rootrem, in1, in2, NULL); } @@ -405,63 +441,92 @@ main (int argc, char **argv) if (pass < reps / 2) /* run fewer tests since gcdext lots of time */ { mpz_gcdext (ref1, ref2, ref3, in1, in2); + MPZ_CHECK_FORMAT (ref1); + MPZ_CHECK_FORMAT (ref2); + MPZ_CHECK_FORMAT (ref3); mpz_set (res1, in1); mpz_gcdext (res1, res2, res3, res1, in2); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); + MPZ_CHECK_FORMAT (res3); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0 || mpz_cmp (ref3, res3) != 0) FAIL2 (mpz_gcdext, in1, in2, NULL); mpz_set (res2, in1); mpz_gcdext (res1, res2, res3, res2, in2); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); + MPZ_CHECK_FORMAT (res3); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0 || mpz_cmp (ref3, res3) != 0) FAIL2 (mpz_gcdext, in1, in2, NULL); mpz_set (res3, in1); mpz_gcdext (res1, res2, res3, res3, in2); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); + MPZ_CHECK_FORMAT (res3); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0 || mpz_cmp (ref3, res3) != 0) FAIL2 (mpz_gcdext, in1, in2, NULL); mpz_set (res1, in2); mpz_gcdext (res1, res2, res3, in1, res1); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); + MPZ_CHECK_FORMAT (res3); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0 || mpz_cmp (ref3, res3) != 0) FAIL2 (mpz_gcdext, in1, in2, NULL); mpz_set (res2, in2); mpz_gcdext (res1, res2, res3, in1, res2); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); + MPZ_CHECK_FORMAT (res3); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0 || mpz_cmp (ref3, res3) != 0) FAIL2 (mpz_gcdext, in1, in2, NULL); mpz_set (res3, in2); mpz_gcdext (res1, res2, res3, in1, res3); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); + MPZ_CHECK_FORMAT (res3); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0 || mpz_cmp (ref3, res3) != 0) FAIL2 (mpz_gcdext, in1, in2, NULL); mpz_set (res1, in1); mpz_gcdext (res1, res2, NULL, res1, in2); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0 || mpz_cmp (ref3, res3) != 0) FAIL2 (mpz_gcdext, in1, in2, NULL); mpz_set (res2, in1); mpz_gcdext (res1, res2, NULL, res2, in2); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0 || mpz_cmp (ref3, res3) != 0) FAIL2 (mpz_gcdext, in1, in2, NULL); mpz_set (res1, in2); mpz_gcdext (res1, res2, NULL, in1, res1); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0 || mpz_cmp (ref3, res3) != 0) FAIL2 (mpz_gcdext, in1, in2, NULL); mpz_set (res2, in2); mpz_gcdext (res1, res2, NULL, in1, res2); + MPZ_CHECK_FORMAT (res1); + MPZ_CHECK_FORMAT (res2); if (mpz_cmp (ref1, res1) != 0 || mpz_cmp (ref2, res2) != 0 || mpz_cmp (ref3, res3) != 0) FAIL2 (mpz_gcdext, in1, in2, NULL); @@ -472,19 +537,23 @@ main (int argc, char **argv) && (mpz_sgn (in2) >= 0 || mpz_invert (t, in1, in3))) { mpz_powm (ref1, in1, in2, in3); + MPZ_CHECK_FORMAT (ref1); mpz_set (res1, in1); mpz_powm (res1, res1, in2, in3); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL2 (mpz_powm, in1, in2, in3); mpz_set (res1, in2); mpz_powm (res1, in1, res1, in3); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL2 (mpz_powm, in1, in2, in3); mpz_set (res1, in3); mpz_powm (res1, in1, in2, res1); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL2 (mpz_powm, in1, in2, in3); } @@ -493,23 +562,28 @@ main (int argc, char **argv) if (mpz_sgn (in3) != 0) { mpz_powm_ui (ref1, in1, in2i, in3); + MPZ_CHECK_FORMAT (ref1); mpz_set (res1, in1); mpz_powm_ui (res1, res1, in2i, in3); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL2 (mpz_powm_ui, in1, in2, in3); mpz_set (res1, in3); mpz_powm_ui (res1, in1, in2i, res1); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL2 (mpz_powm_ui, in1, in2, in3); } { r1 = mpz_gcd_ui (ref1, in1, in2i); + MPZ_CHECK_FORMAT (ref1); mpz_set (res1, in1); r2 = mpz_gcd_ui (res1, res1, in2i); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL2 (mpz_gcd_ui, in1, in2, NULL); } @@ -518,14 +592,17 @@ main (int argc, char **argv) { /* Test mpz_remove */ mpz_remove (ref1, in1, in2); + MPZ_CHECK_FORMAT (ref1); mpz_set (res1, in1); mpz_remove (res1, res1, in2); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL2 (mpz_remove, in1, in2, NULL); mpz_set (res1, in2); mpz_remove (res1, in1, res1); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL2 (mpz_remove, in1, in2, NULL); } @@ -535,14 +612,17 @@ main (int argc, char **argv) /* Test mpz_divexact */ mpz_mul (t, in1, in2); mpz_divexact (ref1, t, in2); + MPZ_CHECK_FORMAT (ref1); mpz_set (res1, t); mpz_divexact (res1, res1, in2); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL2 (mpz_divexact, t, in2, NULL); mpz_set (res1, in2); mpz_divexact (res1, t, res1); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL2 (mpz_divexact, t, in2, NULL); } @@ -552,14 +632,17 @@ main (int argc, char **argv) /* Test mpz_divexact_gcd, same as mpz_divexact */ mpz_mul (t, in1, in2); mpz_divexact_gcd (ref1, t, in2); + MPZ_CHECK_FORMAT (ref1); mpz_set (res1, t); mpz_divexact_gcd (res1, res1, in2); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL2 (mpz_divexact_gcd, t, in2, NULL); mpz_set (res1, in2); mpz_divexact_gcd (res1, t, res1); + MPZ_CHECK_FORMAT (res1); if (mpz_cmp (ref1, res1) != 0) FAIL2 (mpz_divexact_gcd, t, in2, NULL); } diff --git a/tests/mpz/t-pow.c b/tests/mpz/t-pow.c index cdf6deaf4..d6373ea9a 100644 --- a/tests/mpz/t-pow.c +++ b/tests/mpz/t-pow.c @@ -32,6 +32,8 @@ check_one (mpz_srcptr want, mpz_srcptr base, unsigned long exp) mpz_init (got); + MPZ_CHECK_FORMAT (want); + mpz_pow_ui (got, base, exp); if (mpz_cmp (got, want)) { diff --git a/tests/mpz/t-powm.c b/tests/mpz/t-powm.c index a0b84f7a4..662080acf 100644 --- a/tests/mpz/t-powm.c +++ b/tests/mpz/t-powm.c @@ -1,4 +1,4 @@ -/* Test mpz_powm, mpz_mul. mpz_mod, mpz_mod_ui, mpz_div_ui. +/* Test mpz_powm, mpz_mul, mpz_mod, mpz_mod_ui, mpz_div_ui. Copyright 1991, 1993, 1994, 1996, 1999, 2000, 2001, 2009 Free Software Foundation, Inc. @@ -89,6 +89,7 @@ main (int argc, char **argv) /* printf ("%ld %ld %ld\n", SIZ (base), SIZ (exp), SIZ (mod)); */ mpz_powm (r1, base, exp, mod); + MPZ_CHECK_FORMAT (r1); mpz_set_ui (r2, 1); mpz_mod (base2, base, mod); diff --git a/tests/mpz/t-powm_ui.c b/tests/mpz/t-powm_ui.c index 732664752..224e60481 100644 --- a/tests/mpz/t-powm_ui.c +++ b/tests/mpz/t-powm_ui.c @@ -1,4 +1,4 @@ -/* Test mpz_powm_ui, mpz_mul. mpz_mod. +/* Test mpz_powm_ui, mpz_mul, mpz_mod. Copyright 1991, 1993, 1994, 1996, 1997, 2000, 2001, 2002 Free Software Foundation, Inc. @@ -96,6 +96,7 @@ main (int argc, char **argv) #endif mpz_powm_ui (r1, base, exp2, mod); + MPZ_CHECK_FORMAT (r1); mpz_set_ui (r2, 1); mpz_set (base2, base); diff --git a/tests/mpz/t-root.c b/tests/mpz/t-root.c index 86af70e59..22fd31c7f 100644 --- a/tests/mpz/t-root.c +++ b/tests/mpz/t-root.c @@ -37,8 +37,15 @@ check_one (mpz_t root1, mpz_t x2, unsigned long nth, int i) mpz_init (temp); mpz_init (temp2); + MPZ_CHECK_FORMAT (root1); + mpz_rootrem (root2, rem2, x2, nth); + MPZ_CHECK_FORMAT (root2); + MPZ_CHECK_FORMAT (rem2); + mpz_pow_ui (temp, root1, nth); + MPZ_CHECK_FORMAT (temp); + mpz_add (temp2, temp, rem2); /* Is power of result > argument? */ @@ -65,6 +72,7 @@ check_one (mpz_t root1, mpz_t x2, unsigned long nth, int i) { mpz_add_ui (temp2, root1, 1L); mpz_pow_ui (temp2, temp2, nth); + MPZ_CHECK_FORMAT (temp2); /* Is square of (result + 1) <= argument? */ if (mpz_cmp (temp2, x2) <= 0) diff --git a/tests/mpz/t-sqrtrem.c b/tests/mpz/t-sqrtrem.c index d6ebf8e4b..976b9a6e0 100644 --- a/tests/mpz/t-sqrtrem.c +++ b/tests/mpz/t-sqrtrem.c @@ -67,6 +67,9 @@ main (int argc, char **argv) /* printf ("%ld\n", SIZ (x2)); */ mpz_sqrtrem (x, rem, x2); + MPZ_CHECK_FORMAT (x); + MPZ_CHECK_FORMAT (rem); + mpz_mul (temp, x, x); /* Is square of result > argument? */ |