about summary refs log tree commit diff
path: root/math
diff options
context:
space:
mode:
authorAdhemerval Zanella <azanella@linux.vnet.ibm.com>2013-03-22 12:39:10 -0300
committerAdhemerval Zanella <azanella@linux.vnet.ibm.com>2013-03-22 12:39:10 -0300
commite42a38dd9dd4bbeb0fbd6e99f35d796ba37b6879 (patch)
tree6d86cd75766421301163df58b8dd3284acb441ad /math
parent2e0fb52187504fad6657c9462ce650a540d5e387 (diff)
downloadglibc-e42a38dd9dd4bbeb0fbd6e99f35d796ba37b6879.tar.gz
glibc-e42a38dd9dd4bbeb0fbd6e99f35d796ba37b6879.tar.xz
glibc-e42a38dd9dd4bbeb0fbd6e99f35d796ba37b6879.zip
BZ#13889: expl (709.75) wrongly overflows for ldbl-128ibm
The patch increase the high value to check if expl overflows. Current
high mark value is not really correct, the algorithm accepts high values.
It also adds a correct wrapper function to check for overflow and underflow.
Diffstat (limited to 'math')
-rw-r--r--math/libm-test.inc3
1 files changed, 3 insertions, 0 deletions
diff --git a/math/libm-test.inc b/math/libm-test.inc
index 1b70c35f39..85ae23f838 100644
--- a/math/libm-test.inc
+++ b/math/libm-test.inc
@@ -4564,6 +4564,9 @@ exp_test (void)
   TEST_f_f (exp, 0.75L, 2.11700001661267466854536981983709561L);
   TEST_f_f (exp, 50.0L, 5184705528587072464087.45332293348538L);
   TEST_f_f (exp, 88.72269439697265625L, 3.40233126623160774937554134772290447915e38L);
+#ifndef TEST_FLOAT
+  TEST_f_f (exp, 709.75L, 1.739836873264160557698252711673830393864768e+308L);
+#endif
 #if defined TEST_LDOUBLE && __LDBL_MAX_EXP__ > 1024
   /* The result can only be represented in sane long double.  */
   TEST_f_f (exp, 1000.0L, 0.197007111401704699388887935224332313e435L);