summaryrefslogtreecommitdiff
path: root/sysdeps/ieee754/dbl-64/e_exp10.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/ieee754/dbl-64/e_exp10.c')
-rw-r--r--sysdeps/ieee754/dbl-64/e_exp10.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sysdeps/ieee754/dbl-64/e_exp10.c b/sysdeps/ieee754/dbl-64/e_exp10.c
index eac609b71d..b14eaa9833 100644
--- a/sysdeps/ieee754/dbl-64/e_exp10.c
+++ b/sysdeps/ieee754/dbl-64/e_exp10.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2012-2014 Free Software Foundation, Inc.
+/* Copyright (C) 2012-2015 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
@@ -29,12 +29,14 @@ __ieee754_exp10 (double arg)
double arg_high, arg_low;
double exp_high, exp_low;
- if (!__finite (arg))
+ if (!isfinite (arg))
return __ieee754_exp (arg);
if (arg < DBL_MIN_10_EXP - DBL_DIG - 10)
return DBL_MIN * DBL_MIN;
else if (arg > DBL_MAX_10_EXP + 1)
return DBL_MAX * DBL_MAX;
+ else if (fabs (arg) < 0x1p-56)
+ return 1.0;
GET_LOW_WORD (lx, arg);
lx &= 0xf8000000;