diff options
author | Kevin Ryde <user42@zip.com.au> | 2004-04-07 01:13:01 +0200 |
---|---|---|
committer | Kevin Ryde <user42@zip.com.au> | 2004-04-07 01:13:01 +0200 |
commit | 1a13c2eaa786fc6ab1aedb9807120bcd0a30cc7b (patch) | |
tree | 064e7b59393192d25c885bbcb5a9670b2383d9d5 /gen-psqr.c | |
parent | 896af27d81c154d60028e80c73012c70a4f289e4 (diff) | |
download | gmp-1a13c2eaa786fc6ab1aedb9807120bcd0a30cc7b.tar.gz |
* gen-psqr.c (generate_mod): Cast mpz_invert_ui_2exp args, for K&R.
* gen-bases.c, gen-fib.c, gen-psqr.c: For mpz_out_str, use stdout
instead of 0, in case a K&R treats int and FILE* params differently.
Diffstat (limited to 'gen-psqr.c')
-rw-r--r-- | gen-psqr.c | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/gen-psqr.c b/gen-psqr.c index 51f45535c..8ab2559a0 100644 --- a/gen-psqr.c +++ b/gen-psqr.c @@ -26,8 +26,8 @@ MA 02111-1307, USA. */ /* The aim of this program is to choose either mpn_mod_34lsub1 or mpn_mod_1 - (plus a PERFSQR_PP modulus), and generate tables indicating residues and - non-residues modulo small factors of that modulus. + (plus a PERFSQR_PP modulus), and generate tables indicating quadratic + residues and non-residues modulo small factors of that modulus. For the usual 32 or 64 bit cases mpn_mod_34lsub1 gets used. That function exists specifically because 2^24-1 and 2^48-1 have nice sets of @@ -405,7 +405,9 @@ generate_mod (int limb_bits, int nail_bits) for (i = 0; i < nfactor; i++) { mpz_init (factor[i].inverse); - mpz_invert_ui_2exp (factor[i].inverse, factor[i].divisor, mod_bits); + mpz_invert_ui_2exp (factor[i].inverse, + (unsigned long) factor[i].divisor, + (unsigned long) mod_bits); mpz_init (factor[i].mask); square_mask (factor[i].mask, factor[i].divisor); @@ -447,7 +449,7 @@ print (int limb_bits, int nail_bits) for (i = 0; i < nsq_res_0x100; i++) { printf (" CNST_LIMB(0x"); - mpz_out_str (0, 16, sq_res_0x100[i]); + mpz_out_str (stdout, 16, sq_res_0x100[i]); printf ("),\n"); } printf ("};\n"); @@ -474,13 +476,13 @@ print (int limb_bits, int nail_bits) if (mpz_sgn (pp) != 0) { printf ("#define PERFSQR_PP CNST_LIMB(0x"); - mpz_out_str (0, 16, pp); + mpz_out_str (stdout, 16, pp); printf (")\n"); printf ("#define PERFSQR_PP_NORM CNST_LIMB(0x"); - mpz_out_str (0, 16, pp_norm); + mpz_out_str (stdout, 16, pp_norm); printf (")\n"); printf ("#define PERFSQR_PP_INVERTED CNST_LIMB(0x"); - mpz_out_str (0, 16, pp_inverted); + mpz_out_str (stdout, 16, pp_inverted); printf (")\n"); } printf ("\n"); @@ -507,21 +509,21 @@ print (int limb_bits, int nail_bits) printf (" PERFSQR_MOD_%d (r, CNST_LIMB(%2d), CNST_LIMB(0x", factor[i].divisor <= limb_bits ? 1 : 2, factor[i].divisor); - mpz_out_str (0, 16, factor[i].inverse); + mpz_out_str (stdout, 16, factor[i].inverse); printf ("), \\\n"); printf (" CNST_LIMB(0x"); if ( factor[i].divisor <= limb_bits) { - mpz_out_str (0, 16, factor[i].mask); + mpz_out_str (stdout, 16, factor[i].mask); } else { mpz_tdiv_r_2exp (mlo, factor[i].mask, (unsigned long) limb_bits); mpz_tdiv_q_2exp (mhi, factor[i].mask, (unsigned long) limb_bits); - mpz_out_str (0, 16, mhi); + mpz_out_str (stdout, 16, mhi); printf ("), CNST_LIMB(0x"); - mpz_out_str (0, 16, mlo); + mpz_out_str (stdout, 16, mlo); } printf (")); \\\n"); } |