summaryrefslogtreecommitdiff
path: root/tests/tlog1p.c
diff options
context:
space:
mode:
authorzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>2005-02-19 22:04:01 +0000
committerzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>2005-02-19 22:04:01 +0000
commit902ff82f082100ef13ef05803547fac0423080ca (patch)
tree8c7b578a9ab855bdf34af12b5e1d6f42ffd70c9c /tests/tlog1p.c
parent091bf6ec1537c1e9bf9491fca8d6815d779729a8 (diff)
downloadmpfr-902ff82f082100ef13ef05803547fac0423080ca.tar.gz
added generic tests in tpow
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3340 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'tests/tlog1p.c')
-rw-r--r--tests/tlog1p.c39
1 files changed, 31 insertions, 8 deletions
diff --git a/tests/tlog1p.c b/tests/tlog1p.c
index ffd1df02e..60c6164ce 100644
--- a/tests/tlog1p.c
+++ b/tests/tlog1p.c
@@ -25,7 +25,30 @@ MA 02111-1307, USA. */
#include "mpfr-test.h"
-#define TEST_FUNCTION mpfr_log1p
+#ifdef CHECK_EXTERNAL
+static int
+test_log1p (mpfr_ptr a, mpfr_srcptr b, mp_rnd_t rnd_mode)
+{
+ int res;
+ int ok = rnd_mode == GMP_RNDN && mpfr_number_p (b) && mpfr_get_prec (a)>=53;
+ if (ok)
+ {
+ mpfr_print_raw (b);
+ }
+ res = mpfr_log1p (a, b, rnd_mode);
+ if (ok)
+ {
+ printf (" ");
+ mpfr_print_raw (a);
+ printf ("\n");
+ }
+ return res;
+}
+#else
+#define test_log1p mpfr_log1p
+#endif
+
+#define TEST_FUNCTION test_log1p
#include "tgeneric.c"
static void
@@ -36,30 +59,30 @@ special (void)
mpfr_init (x);
mpfr_set_nan (x);
- mpfr_log1p (x, x, GMP_RNDN);
+ test_log1p (x, x, GMP_RNDN);
MPFR_ASSERTN(mpfr_nan_p (x));
mpfr_set_inf (x, -1);
- mpfr_log1p (x, x, GMP_RNDN);
+ test_log1p (x, x, GMP_RNDN);
MPFR_ASSERTN(mpfr_nan_p (x));
mpfr_set_inf (x, 1);
- mpfr_log1p (x, x, GMP_RNDN);
+ test_log1p (x, x, GMP_RNDN);
MPFR_ASSERTN(mpfr_inf_p (x) && mpfr_sgn (x) > 0);
mpfr_set_ui (x, 0, GMP_RNDN);
- mpfr_log1p (x, x, GMP_RNDN);
+ test_log1p (x, x, GMP_RNDN);
MPFR_ASSERTN(mpfr_cmp_ui (x, 0) == 0 && MPFR_IS_POS (x));
mpfr_neg (x, x, GMP_RNDN);
- mpfr_log1p (x, x, GMP_RNDN);
+ test_log1p (x, x, GMP_RNDN);
MPFR_ASSERTN(mpfr_cmp_ui (x, 0) == 0 && MPFR_IS_NEG (x));
mpfr_set_si (x, -1, GMP_RNDN);
- mpfr_log1p (x, x, GMP_RNDN);
+ test_log1p (x, x, GMP_RNDN);
MPFR_ASSERTN(mpfr_inf_p (x) && mpfr_sgn (x) < 0);
mpfr_set_si (x, -2, GMP_RNDN);
- mpfr_log1p (x, x, GMP_RNDN);
+ test_log1p (x, x, GMP_RNDN);
MPFR_ASSERTN(mpfr_nan_p (x));
mpfr_clear (x);