summaryrefslogtreecommitdiff
path: root/tests/tgeneric.c
diff options
context:
space:
mode:
authorzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>2016-02-17 12:34:05 +0000
committerzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>2016-02-17 12:34:05 +0000
commit3d3fffa4ec0a36f6e2b9de6cba7c17425de9742e (patch)
treeb24d811954928642c0b54a561354b4d52e19b87d /tests/tgeneric.c
parent83ee5180a3bb1d4c4f240be5aaf99830f1e6afac (diff)
downloadmpfr-3d3fffa4ec0a36f6e2b9de6cba7c17425de9742e.tar.gz
now mpfr_gamma_inc(a,x) also works for 'a' a negative integer
(however a and x should not be too large, we should implement Legendre's continued fraction for the general case) git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10049 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'tests/tgeneric.c')
-rw-r--r--tests/tgeneric.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/tests/tgeneric.c b/tests/tgeneric.c
index 208b97ce4..ed806f041 100644
--- a/tests/tgeneric.c
+++ b/tests/tgeneric.c
@@ -131,6 +131,11 @@ http://www.gnu.org/licenses/ or write to the Free Software Foundation, Inc.,
#define REDUCE_EMAX mpfr_get_emax ()
#endif
+/* same for mpfr_get_emin() */
+#ifndef REDUCE_EMIN
+#define REDUCE_EMIN mpfr_get_emin ()
+#endif
+
static void
test_generic (mpfr_prec_t p0, mpfr_prec_t p1, unsigned int nmax)
{
@@ -227,10 +232,10 @@ test_generic (mpfr_prec_t p0, mpfr_prec_t p1, unsigned int nmax)
if (n <= 1)
{
mpfr_set_si (x, n == 0 ? 1 : -1, MPFR_RNDN);
- mpfr_set_exp (x, mpfr_get_emin ());
+ mpfr_set_exp (x, REDUCE_EMIN);
#if defined(TWO_ARGS) || defined(DOUBLE_ARG1) || defined(DOUBLE_ARG2)
mpfr_set_si (u, randlimb () % 2 == 0 ? 1 : -1, MPFR_RNDN);
- mpfr_set_exp (u, mpfr_get_emin ());
+ mpfr_set_exp (u, REDUCE_EMAX);
#endif
}
else /* 2 <= n <= 3 */
@@ -239,7 +244,7 @@ test_generic (mpfr_prec_t p0, mpfr_prec_t p1, unsigned int nmax)
mpfr_setmax (x, REDUCE_EMAX);
#if defined(TWO_ARGS) || defined(DOUBLE_ARG1) || defined(DOUBLE_ARG2)
mpfr_set_si (u, randlimb () % 2 == 0 ? 1 : -1, MPFR_RNDN);
- mpfr_setmax (u, mpfr_get_emax ());
+ mpfr_setmax (u, REDUCE_EMAX);
#endif
}
}