aboutsummaryrefslogtreecommitdiff
path: root/math
diff options
context:
space:
mode:
Diffstat (limited to 'math')
-rw-r--r--math/Makefile6
-rw-r--r--math/libm-test.c8
2 files changed, 8 insertions, 6 deletions
diff --git a/math/Makefile b/math/Makefile
index 2be1718..ec5910e 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -1,4 +1,4 @@
-# Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
# The GNU C Library is free software; you can redistribute it and/or
@@ -41,7 +41,7 @@ libm-map := libm.map
libm-support = k_standard s_lib_version s_matherr s_signgam \
fclrexcpt fgetexcptflg fraiseexcpt fsetexcptflg \
ftestexcept fegetround fesetround fegetenv feholdexcpt \
- fesetenv feupdateenv
+ fesetenv feupdateenv t_exp
libm-calls = e_acos e_acosh e_asin e_atan2 e_atanh e_cosh e_exp e_fmod \
e_hypot e_j0 e_j1 e_jn e_lgamma_r e_log e_log10 e_pow \
e_rem_pio2 e_remainder e_scalb e_sinh e_sqrt e_gamma_r \
@@ -78,7 +78,7 @@ distribute += $(long-c-yes:=.c)
# Rules for the test suite.
tests = test-float test-double $(test-longdouble-$(long-double-fcts)) \
test-ifloat test-idouble test-matherr test-fenv \
- atest-exp atest-sincos atest-exp2 # test-reduce
+ atest-exp atest-sincos atest-exp2
# We do the `long double' tests only if this data type is available and
# distinct from `double'.
test-longdouble-yes = test-ldouble test-ildoubl
diff --git a/math/libm-test.c b/math/libm-test.c
index f35ef41..3dffcad 100644
--- a/math/libm-test.c
+++ b/math/libm-test.c
@@ -138,6 +138,8 @@
/* Various constants (we must supply them precalculated for accuracy). */
#define M_PI_6 .52359877559829887308L
+#define M_E2 7.389056098930650227230L
+#define M_E3 20.08553692318766774093L
static int noErrors; /* number of errors */
static int noTests; /* number of tests (without testing exceptions) */
@@ -1175,11 +1177,11 @@ exp_test (void)
check_isinfp ("exp (+inf) == +inf", FUNC(exp) (plus_infty));
check ("exp (-inf) == 0", FUNC(exp) (minus_infty), 0);
#endif
- check_eps ("exp (1) == e", FUNC(exp) (1), M_E, CHOOSE (4e-18L, 5e-16, 0));
+ check_eps ("exp (1) == e", FUNC(exp) (1), M_E, CHOOSE (4e-18L, 0, 0));
- check_eps ("exp (2) == e^2", FUNC(exp) (2), M_E * M_E,
+ check_eps ("exp (2) == e^2", FUNC(exp) (2), M_E2,
CHOOSE (1e-18, 0, 0));
- check_eps ("exp (3) == e^3", FUNC(exp) (3), M_E * M_E * M_E,
+ check_eps ("exp (3) == e^3", FUNC(exp) (3), M_E3,
CHOOSE (1.5e-17, 0, 0));
check_eps ("exp (0.7) == 2.0137527074...", FUNC(exp) (0.7),
2.0137527074704765216L, CHOOSE(9e-17L, 0, 0));