diff options
author | zimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4> | 2015-10-29 12:29:44 +0000 |
---|---|---|
committer | zimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4> | 2015-10-29 12:29:44 +0000 |
commit | b9028a17d0ab8d523f44f771e18f67f14d8effb7 (patch) | |
tree | 9cfa2a6a1513da3b7e7bd2f0e5af3a882bb21d7e /src/mpfr-mini-gmp.c | |
parent | a32fcfd5927d45929a27bd91348765e296b2b55e (diff) | |
download | mpfr-b9028a17d0ab8d523f44f771e18f67f14d8effb7.tar.gz |
more tests do work with mini-gmp (from GMP 6.1.0-rc1)
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@9708 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'src/mpfr-mini-gmp.c')
-rw-r--r-- | src/mpfr-mini-gmp.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/mpfr-mini-gmp.c b/src/mpfr-mini-gmp.c index e8ae8fe58..e7e319832 100644 --- a/src/mpfr-mini-gmp.c +++ b/src/mpfr-mini-gmp.c @@ -66,7 +66,7 @@ mpn_neg (mp_limb_t *rp, const mp_limb_t *sp, mp_size_t n) #endif #ifdef WANT_mpn_com -mp_limb_t +void mpn_com (mp_limb_t *rp, const mp_limb_t *sp, mp_size_t n) { mp_size_t i; @@ -118,10 +118,12 @@ mpn_divrem_1 (mp_limb_t *qp, mp_size_t qxn, mp_limb_t *np, mp_size_t nn, static mp_limb_t random_limb (void) { + /* lrand48() only gives 31 bits */ #if GMP_NUMB_BITS == 32 - return lrand48 (); + return lrand48 () + (lrand48 () << 31); #else - return (((mp_limb_t) lrand48 ()) << 32) + lrand48 (); + return lrand48 () + (((mp_limb_t) lrand48 ()) << 31) + + (((mp_limb_t) lrand48 ()) << 62); #endif } |