diff options
-rw-r--r-- | tests/mpfr-test.h | 2 | ||||
-rw-r--r-- | tests/tasin.c | 1 | ||||
-rw-r--r-- | tests/tatanh.c | 1 | ||||
-rw-r--r-- | tests/tcosh.c | 2 | ||||
-rw-r--r-- | tests/tcsch.c | 1 | ||||
-rw-r--r-- | tests/tdim.c | 3 | ||||
-rw-r--r-- | tests/teint.c | 2 | ||||
-rw-r--r-- | tests/terf.c | 2 | ||||
-rw-r--r-- | tests/tests.c | 5 | ||||
-rw-r--r-- | tests/texp.c | 2 | ||||
-rw-r--r-- | tests/texp10.c | 2 | ||||
-rw-r--r-- | tests/texp2.c | 2 | ||||
-rw-r--r-- | tests/texpm1.c | 2 | ||||
-rw-r--r-- | tests/tgeneric.c | 16 | ||||
-rw-r--r-- | tests/tlog1p.c | 1 | ||||
-rw-r--r-- | tests/tpow.c | 1 | ||||
-rw-r--r-- | tests/tsech.c | 2 | ||||
-rw-r--r-- | tests/tsinh.c | 2 | ||||
-rw-r--r-- | tests/ttanh.c | 2 | ||||
-rw-r--r-- | tests/tzeta.c | 4 |
20 files changed, 49 insertions, 6 deletions
diff --git a/tests/mpfr-test.h b/tests/mpfr-test.h index 5203ce911..3c97147af 100644 --- a/tests/mpfr-test.h +++ b/tests/mpfr-test.h @@ -78,7 +78,7 @@ void ld_trace _MPFR_PROTO ((const char *, long double)); FILE *src_fopen _MPFR_PROTO ((const char *, const char *)); void set_emin _MPFR_PROTO ((mp_exp_t)); void set_emax _MPFR_PROTO ((mp_exp_t)); -void tests_default_random _MPFR_PROTO ((mpfr_ptr, int)); +void tests_default_random _MPFR_PROTO ((mpfr_ptr, int, mp_exp_t, mp_exp_t)); void data_check _MPFR_PROTO ((char *, int (*) (), char *)); int mpfr_cmp_str _MPFR_PROTO ((mpfr_srcptr x, const char *, int, mp_rnd_t)); diff --git a/tests/tasin.c b/tests/tasin.c index 3dd56c7e9..1524b8134 100644 --- a/tests/tasin.c +++ b/tests/tasin.c @@ -26,6 +26,7 @@ MA 02110-1301, USA. */ #include "mpfr-test.h" #define TEST_FUNCTION mpfr_asin +#define TEST_RANDOM_EMAX 7 #include "tgeneric.c" static void diff --git a/tests/tatanh.c b/tests/tatanh.c index efd098c31..9e6727039 100644 --- a/tests/tatanh.c +++ b/tests/tatanh.c @@ -26,6 +26,7 @@ MA 02110-1301, USA. */ #include "mpfr-test.h" #define TEST_FUNCTION mpfr_atanh +#define TEST_RANDOM_EMAX 7 #include "tgeneric.c" static void diff --git a/tests/tcosh.c b/tests/tcosh.c index 5e797f8fb..b07507d2c 100644 --- a/tests/tcosh.c +++ b/tests/tcosh.c @@ -26,6 +26,8 @@ MA 02110-1301, USA. */ #include "mpfr-test.h" #define TEST_FUNCTION mpfr_cosh +#define TEST_RANDOM_EMIN -36 +#define TEST_RANDOM_EMAX 36 #include "tgeneric.c" static void diff --git a/tests/tcsch.c b/tests/tcsch.c index 116ff7cd0..0dbd5a540 100644 --- a/tests/tcsch.c +++ b/tests/tcsch.c @@ -26,6 +26,7 @@ MA 02110-1301, USA. */ #include "mpfr-test.h" #define TEST_FUNCTION mpfr_csch +#define TEST_RANDOM_EMAX 63 #include "tgeneric.c" static void diff --git a/tests/tdim.c b/tests/tdim.c index d04184af3..7960d12b0 100644 --- a/tests/tdim.c +++ b/tests/tdim.c @@ -27,6 +27,9 @@ MA 02110-1301, USA. */ #define TEST_FUNCTION mpfr_dim #define TWO_ARGS +#define TEST_RANDOM_EMIN -20 +#define TEST_RANDOM_EMAX 20 +#define TGENERIC_NOWARNING 1 #include "tgeneric.c" int diff --git a/tests/teint.c b/tests/teint.c index 0e9836517..7254fb73c 100644 --- a/tests/teint.c +++ b/tests/teint.c @@ -26,6 +26,8 @@ MA 02110-1301, USA. */ #include "mpfr-test.h" #define TEST_FUNCTION mpfr_eint +#define TEST_RANDOM_POS 8 +#define TEST_RANDOM_EMAX 40 #include "tgeneric.c" static void diff --git a/tests/terf.c b/tests/terf.c index 90f1be319..f50d9fe9f 100644 --- a/tests/terf.c +++ b/tests/terf.c @@ -31,6 +31,8 @@ MA 02110-1301, USA. */ #include "tgeneric.c" #define TEST_FUNCTION mpfr_erfc +#undef TEST_RANDOM_EMAX +#define TEST_RANDOM_EMAX 63 #define test_generic test_generic_erfc #include "tgeneric.c" diff --git a/tests/tests.c b/tests/tests.c index bc4ca1d79..c1228f7ea 100644 --- a/tests/tests.c +++ b/tests/tests.c @@ -408,11 +408,12 @@ set_emax (mp_exp_t exponent) /* pos is 512 times the proportion of negative numbers */ void -tests_default_random (mpfr_ptr x, int pos) +tests_default_random (mpfr_ptr x, int pos, mp_exp_t emin, mp_exp_t emax) { mpfr_random (x); if (randlimb () & 1) - mpfr_mul_2si (x, x, (int) (randlimb () % 512) - 256, GMP_RNDN); + mpfr_mul_2si (x, x, emin + (long) (randlimb () % (emax - emin + 1)), + GMP_RNDN); if (randlimb () % 512 < pos) mpfr_neg (x, x, GMP_RNDN); } diff --git a/tests/texp.c b/tests/texp.c index 6a14cf743..964a1fe07 100644 --- a/tests/texp.c +++ b/tests/texp.c @@ -213,6 +213,8 @@ check_large (void) } #define TEST_FUNCTION test_exp +#define TEST_RANDOM_EMIN -36 +#define TEST_RANDOM_EMAX 36 #include "tgeneric.c" static void diff --git a/tests/texp10.c b/tests/texp10.c index 5b1e70283..b9abfbc5b 100644 --- a/tests/texp10.c +++ b/tests/texp10.c @@ -27,6 +27,8 @@ MA 02110-1301, USA. */ #include "mpfr-test.h" #define TEST_FUNCTION mpfr_exp10 +#define TEST_RANDOM_EMIN -36 +#define TEST_RANDOM_EMAX 36 #include "tgeneric.c" static void diff --git a/tests/texp2.c b/tests/texp2.c index 1a7dc71ce..1d4ade513 100644 --- a/tests/texp2.c +++ b/tests/texp2.c @@ -27,6 +27,8 @@ MA 02110-1301, USA. */ #include "mpfr-test.h" #define TEST_FUNCTION mpfr_exp2 +#define TEST_RANDOM_EMIN -36 +#define TEST_RANDOM_EMAX 36 #include "tgeneric.c" static void diff --git a/tests/texpm1.c b/tests/texpm1.c index e1274a35a..d35138bdf 100644 --- a/tests/texpm1.c +++ b/tests/texpm1.c @@ -49,6 +49,8 @@ test_expm1 (mpfr_ptr a, mpfr_srcptr b, mp_rnd_t rnd_mode) #endif #define TEST_FUNCTION test_expm1 +#define TEST_RANDOM_EMIN -36 +#define TEST_RANDOM_EMAX 36 #include "tgeneric.c" static void diff --git a/tests/tgeneric.c b/tests/tgeneric.c index 1e4506dac..c4b907651 100644 --- a/tests/tgeneric.c +++ b/tests/tgeneric.c @@ -32,6 +32,14 @@ MA 02110-1301, USA. */ #define TEST_RANDOM_POS2 256 #endif +#ifndef TEST_RANDOM_EMIN +#define TEST_RANDOM_EMIN -256 +#endif + +#ifndef TEST_RANDOM_EMAX +#define TEST_RANDOM_EMAX 255 +#endif + #define TGENERIC_FAIL(S, X, U) \ do \ { \ @@ -145,9 +153,11 @@ test_generic (mp_prec_t p0, mp_prec_t p1, unsigned int N) RAND_FUNCTION (u); #endif #else - tests_default_random (x, TEST_RANDOM_POS); + tests_default_random (x, TEST_RANDOM_POS, + TEST_RANDOM_EMIN, TEST_RANDOM_EMAX); #ifdef TWO_ARGS - tests_default_random (u, TEST_RANDOM_POS2); + tests_default_random (u, TEST_RANDOM_POS2, + TEST_RANDOM_EMIN, TEST_RANDOM_EMAX); #endif #endif } @@ -273,9 +283,11 @@ test_generic (mp_prec_t p0, mp_prec_t p1, unsigned int N) } } +#ifndef TGENERIC_NOWARNING if (3 * ctrn < 2 * ctrt) printf ("Warning! Too few normal cases in generic tests (%lu / %lu)\n", ctrn, ctrt); +#endif mpfr_clear (x); mpfr_clear (y); diff --git a/tests/tlog1p.c b/tests/tlog1p.c index b6d0b6252..3db979844 100644 --- a/tests/tlog1p.c +++ b/tests/tlog1p.c @@ -49,6 +49,7 @@ test_log1p (mpfr_ptr a, mpfr_srcptr b, mp_rnd_t rnd_mode) #endif #define TEST_FUNCTION test_log1p +#define TEST_RANDOM_EMAX 80 #include "tgeneric.c" static void diff --git a/tests/tpow.c b/tests/tpow.c index 424f91ccc..0be98508a 100644 --- a/tests/tpow.c +++ b/tests/tpow.c @@ -57,6 +57,7 @@ test_pow (mpfr_ptr a, mpfr_srcptr b, mpfr_srcptr c, mp_rnd_t rnd_mode) #define TEST_FUNCTION test_pow #define TWO_ARGS #define TEST_RANDOM_POS 16 +#define TGENERIC_NOWARNING 1 #include "tgeneric.c" #define TEST_FUNCTION mpfr_pow_ui diff --git a/tests/tsech.c b/tests/tsech.c index e35a114b9..91d23ffc2 100644 --- a/tests/tsech.c +++ b/tests/tsech.c @@ -26,6 +26,8 @@ MA 02110-1301, USA. */ #include "mpfr-test.h" #define TEST_FUNCTION mpfr_sech +#define TEST_RANDOM_EMIN -64 +#define TEST_RANDOM_EMAX 36 #include "tgeneric.c" static void diff --git a/tests/tsinh.c b/tests/tsinh.c index a4457f624..460e1afaf 100644 --- a/tests/tsinh.c +++ b/tests/tsinh.c @@ -26,6 +26,8 @@ MA 02110-1301, USA. */ #include "mpfr-test.h" #define TEST_FUNCTION mpfr_sinh +#define TEST_RANDOM_EMIN -36 +#define TEST_RANDOM_EMAX 36 #include "tgeneric.c" static void diff --git a/tests/ttanh.c b/tests/ttanh.c index a5f8683f3..5985163ee 100644 --- a/tests/ttanh.c +++ b/tests/ttanh.c @@ -26,6 +26,8 @@ MA 02110-1301, USA. */ #include "mpfr-test.h" #define TEST_FUNCTION mpfr_tanh +#define TEST_RANDOM_EMIN -36 +#define TEST_RANDOM_EMAX 36 #include "tgeneric.c" static void diff --git a/tests/tzeta.c b/tests/tzeta.c index b72bc1d14..5013c61aa 100644 --- a/tests/tzeta.c +++ b/tests/tzeta.c @@ -188,6 +188,8 @@ test2(void) } #define TEST_FUNCTION mpfr_zeta +#define TEST_RANDOM_EMIN -48 +#define TEST_RANDOM_EMAX 31 #include "tgeneric.c" /* Usage: tzeta - generic tests @@ -384,7 +386,7 @@ main (int argc, char *argv[]) mpfr_clear (y); mpfr_clear (z); - test_generic (2, 70, 1); + test_generic (2, 70, 5); test2 (); tests_end_mpfr (); |