about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--math/libm-test.inc8
-rw-r--r--math/test-ildoubl.c3
-rw-r--r--math/test-ldouble.c3
-rw-r--r--sysdeps/i386/fpu/libm-test-ulps10
5 files changed, 26 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 6750e2760a..9983078ddd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
 2001-05-07  Andreas Jaeger  <aj@suse.de>
 
+	* sysdeps/i386/fpu/libm-test-ulps: Add ulps for new exp tests.
+
+	* math/libm-test.inc (exp_test): Add some more tests.
+	(pow_test): Run double only test also for long double.
+
+	* math/test-ldouble.c (TEST_LDOUBLE): Define.
+	* math/test-ildoubl.c (TEST_LDOUBLE): Likewise.
+
 	* sysdeps/generic/bits/confname.h: Remove extra comma at end of
 	enumeration.
 	Closes PR libc/2240.
diff --git a/math/libm-test.inc b/math/libm-test.inc
index 0a5076024d..be6b1b6890 100644
--- a/math/libm-test.inc
+++ b/math/libm-test.inc
@@ -2372,7 +2372,11 @@ exp_test (void)
   TEST_f_f (exp, 2, M_E2l);
   TEST_f_f (exp, 3, M_E3l);
   TEST_f_f (exp, 0.7L, 2.0137527074704765216L);
-
+  TEST_f_f (exp, 50.0L, 5184705528587072464087.45332293348538L);
+#ifdef TEST_LDOUBLE
+  /* The result can only be represented in long double.  */
+  TEST_f_f (exp, 1000.0L, 0.197007111401704699388887935224332313e435L);
+#endif
   END (exp);
 }
 
@@ -3560,7 +3564,7 @@ pow_test (void)
 
   TEST_ff_f (pow, 0.7L, 1.2L, 0.65180494056638638188L);
 
-#ifdef TEST_DOUBLE
+#if defined TEST_DOUBLE || defined TEST_LDOUBLE
   TEST_ff_f (pow, -7.49321e+133, -9.80818e+16, 0);
 #endif
 
diff --git a/math/test-ildoubl.c b/math/test-ildoubl.c
index 4d0780ed6f..d89512d068 100644
--- a/math/test-ildoubl.c
+++ b/math/test-ildoubl.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1999, 2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Andreas Jaeger <aj@suse.de>, 1997.
 
@@ -27,6 +27,7 @@
 #define PRINTF_XEXPR "La"
 #define PRINTF_NEXPR "Lf"
 #define TEST_INLINE
+#define TEST_LDOUBLE 1
 
 #ifdef __NO_MATH_INLINES
 # undef __NO_MATH_INLINES
diff --git a/math/test-ldouble.c b/math/test-ldouble.c
index 8401f2da17..47764500c1 100644
--- a/math/test-ldouble.c
+++ b/math/test-ldouble.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1999, 2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Andreas Jaeger <aj@suse.de>, 1997.
 
@@ -25,6 +25,7 @@
 #define PRINTF_EXPR "Le"
 #define PRINTF_XEXPR "La"
 #define PRINTF_NEXPR "Lf"
+#define TEST_LDOUBLE 1
 
 #ifndef __NO_MATH_INLINES
 # define __NO_MATH_INLINES
diff --git a/sysdeps/i386/fpu/libm-test-ulps b/sysdeps/i386/fpu/libm-test-ulps
index 5e58894691..d5460c9e7a 100644
--- a/sysdeps/i386/fpu/libm-test-ulps
+++ b/sysdeps/i386/fpu/libm-test-ulps
@@ -561,6 +561,12 @@ ildouble: 36
 Test "exp (0.7) == 2.0137527074704765216":
 ildouble: 412
 ldouble: 412
+Test "exp (50.0) == 5184705528587072464087.45332293348538":
+ildouble:  16
+ldouble:  16
+Test "exp (1000.0) == 0.197007111401704699388887935224332313e435":
+ildouble:  754
+ldouble:  754
 
 # exp10
 Test "exp10 (-1) == 0.1":
@@ -1445,8 +1451,8 @@ ldouble: 36
 ildouble: 36
 
 Function: "exp":
-ildouble: 412
-ldouble: 412
+ildouble: 754
+ldouble: 754
 
 Function: "exp10":
 double: 1