diff options
Diffstat (limited to 'tests/tsub.c')
-rw-r--r-- | tests/tsub.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/tests/tsub.c b/tests/tsub.c index d94d77a7b..806b7316e 100644 --- a/tests/tsub.c +++ b/tests/tsub.c @@ -307,11 +307,10 @@ check_two_sum (mp_prec_t p) mpfr_random (y); if (mpfr_cmpabs (x, y) < 0) mpfr_swap (x, y); - rnd = randlimb () % 4; rnd = GMP_RNDN; - inexact = mpfr_sub (u, x, y, GMP_RNDN); - mpfr_sub (v, u, x, GMP_RNDN); - mpfr_add (w, v, y, GMP_RNDN); + inexact = mpfr_sub (u, x, y, rnd); + mpfr_sub (v, u, x, rnd); + mpfr_add (w, v, y, rnd); /* as u = (x-y) - w, we should have inexact and w of opposite signs */ if (((inexact == 0) && mpfr_cmp_ui (w, 0)) || ((inexact > 0) && (mpfr_cmp_ui (w, 0) <= 0)) || @@ -386,14 +385,14 @@ check_inexact (void) : MPFR_EXP(u) - MPFR_EXP(x); pz = pz + MAX(MPFR_PREC(x), MPFR_PREC(u)); mpfr_set_prec (z, pz); - rnd = randlimb () % 4; + rnd = RND_RAND(); if (mpfr_sub (z, x, u, rnd)) { printf ("z <- x - u should be exact\n"); exit (1); } { - rnd = randlimb () % 4; + rnd = RND_RAND (); inexact = mpfr_sub (y, x, u, rnd); cmp = mpfr_cmp (y, z); if (((inexact == 0) && (cmp != 0)) || |