summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--NEWS2
-rw-r--r--sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c1
3 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index a754fef619..f9ccbe6e3b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2012-06-21 Joseph Myers <joseph@codesourcery.com>
+ [BZ #14273]
+ * sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c (__ieee754_cosh):
+ Clear sign bit of 64-bit integer value before comparing against
+ overflow value.
+
* sysdeps/mach/configure: Regenerated.
2012-06-21 H.J. Lu <hongjiu.lu@intel.com>
diff --git a/NEWS b/NEWS
index b5edb990ed..8797a6bae7 100644
--- a/NEWS
+++ b/NEWS
@@ -30,7 +30,7 @@ Version 2.16
13983, 13986, 13996, 14012, 14027, 14033, 14034, 14036, 14040, 14043,
14044, 14048, 14049, 14050, 14053, 14055, 14059, 14064, 14075, 14080,
14083, 14103, 14104, 14109, 14112, 14117, 14122, 14123, 14134, 14153,
- 14183, 14188, 14199, 14210, 14218, 14229, 14241, 14278
+ 14183, 14188, 14199, 14210, 14218, 14229, 14241, 14273, 14278
* Support for the x32 ABI on x86-64 added. The x32 target is selected by
configuring glibc with:
diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c b/sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c
index b8ab748304..84593521cc 100644
--- a/sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c
+++ b/sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c
@@ -67,6 +67,7 @@ __ieee754_cosh (double x)
/* |x| in [log(maxdouble), overflowthresold] */
int64_t fix;
EXTRACT_WORDS64(fix, x);
+ fix &= UINT64_C(0x7fffffffffffffff);
if (fix <= UINT64_C(0x408633ce8fb9f87d)) {
w = __ieee754_exp(half*fabs(x));
t = half*w;