diff options
author | Joseph Myers <joseph@codesourcery.com> | 2012-06-21 19:26:09 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2012-06-21 19:26:09 +0000 |
commit | b7abb4bf78443f4f8d05a9dfa768fdee65b99d42 (patch) | |
tree | 86b3d1d629d7c42911923dd3588487e49ecbc3e4 | |
parent | 79662d4270e4d5c585dd7b2af012c6ac4a8e00d1 (diff) | |
download | glibc-b7abb4bf78443f4f8d05a9dfa768fdee65b99d42.zip glibc-b7abb4bf78443f4f8d05a9dfa768fdee65b99d42.tar.gz glibc-b7abb4bf78443f4f8d05a9dfa768fdee65b99d42.tar.bz2 |
Fix wordsize-64 cosh regression (bug 14273).
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c | 1 |
3 files changed, 7 insertions, 1 deletions
@@ -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> @@ -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 b8ab748..8459352 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; |