summaryrefslogtreecommitdiff
path: root/tests/tzeta_ui.c
diff options
context:
space:
mode:
authorvlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4>2015-06-08 00:46:52 +0000
committervlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4>2015-06-08 00:46:52 +0000
commitdd49d7e75b89221d41d7ee83cd3b84ff46ccf6e6 (patch)
tree12789150e1fb40d9d1ef7f56bf8e4f85044476e9 /tests/tzeta_ui.c
parentb0e8fd8630c0de561453fbe151940498198a56cb (diff)
downloadmpfr-dd49d7e75b89221d41d7ee83cd3b84ff46ccf6e6.tar.gz
[src/zeta_ui.c]
* Support reduced exponent range for the generic case. * Added logging. [tests/tzeta_ui.c] Added tests in reduced exponent range. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@9523 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'tests/tzeta_ui.c')
-rw-r--r--tests/tzeta_ui.c42
1 files changed, 31 insertions, 11 deletions
diff --git a/tests/tzeta_ui.c b/tests/tzeta_ui.c
index 5b3ff22c1..e3ce4ca35 100644
--- a/tests/tzeta_ui.c
+++ b/tests/tzeta_ui.c
@@ -158,18 +158,38 @@ main (int argc, char *argv[])
+ (rnd == MPFR_RNDN)))
{
mpfr_set (t, y, (mpfr_rnd_t) rnd);
- mpfr_zeta_ui (z, n, (mpfr_rnd_t) rnd);
- if (mpfr_cmp (t, z))
+ for (i = 0; i <= 1; i++)
{
- printf ("results differ for n = %lu, prec = %u, %s\n",
- n, prec, mpfr_print_rnd_mode ((mpfr_rnd_t) rnd));
- printf (" got ");
- mpfr_dump (z);
- printf (" expected ");
- mpfr_dump (t);
- printf (" approx ");
- mpfr_dump (y);
- exit (1);
+ if (i)
+ {
+ mpfr_exp_t e;
+
+ if (MPFR_IS_SINGULAR (t))
+ break;
+ e = mpfr_get_exp (t);
+ set_emin (e);
+ set_emax (e);
+ }
+ mpfr_zeta_ui (z, n, (mpfr_rnd_t) rnd);
+ if (i)
+ {
+ set_emin (emin);
+ set_emax (emax);
+ }
+ if (mpfr_cmp (t, z))
+ {
+ printf ("results differ for n = %lu, prec = %u,"
+ " %s%s\n", n, prec,
+ mpfr_print_rnd_mode ((mpfr_rnd_t) rnd),
+ i ? ", reduced exponent range" : "");
+ printf (" got ");
+ mpfr_dump (z);
+ printf (" expected ");
+ mpfr_dump (t);
+ printf (" approx ");
+ mpfr_dump (y);
+ exit (1);
+ }
}
}
}