diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | NEWS | 12 | ||||
-rw-r--r-- | sysdeps/ieee754/flt-32/e_hypotf.c | 12 |
3 files changed, 12 insertions, 16 deletions
diff --git a/ChangeLog b/ChangeLog index 4d6f2bb313..f807e7cf17 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2015-09-15 Joseph Myers <joseph@codesourcery.com> + [BZ #15918] + * sysdeps/ieee754/flt-32/e_hypotf.c (__ieee754_hypotf): Simplify + handling of cases where one argument is an infinity. + [BZ #18875] [BZ #18966] * sysdeps/i386/fpu/e_exp10.S (dbl_min): New object. diff --git a/NEWS b/NEWS index f782af359e..a09ba38f73 100644 --- a/NEWS +++ b/NEWS @@ -9,12 +9,12 @@ Version 2.23 * The following bugs are resolved with this release: - 2542, 2543, 2558, 2898, 14341, 14912, 15786, 16141, 16517, 16519, 16520, - 16521, 16734, 16973, 16985, 17787, 17905, 18084, 18086, 18240, 18265, - 18370, 18421, 18480, 18525, 18610, 18618, 18647, 18661, 18674, 18675, - 18681, 18757, 18778, 18781, 18787, 18789, 18790, 18795, 18796, 18820, - 18823, 18824, 18863, 18870, 18873, 18875, 18887, 18921, 18952, 18961, - 18966. + 2542, 2543, 2558, 2898, 14341, 14912, 15786, 15918, 16141, 16517, 16519, + 16520, 16521, 16734, 16973, 16985, 17787, 17905, 18084, 18086, 18240, + 18265, 18370, 18421, 18480, 18525, 18610, 18618, 18647, 18661, 18674, + 18675, 18681, 18757, 18778, 18781, 18787, 18789, 18790, 18795, 18796, + 18820, 18823, 18824, 18863, 18870, 18873, 18875, 18887, 18921, 18952, + 18961, 18966. * The obsolete header <regexp.h> has been removed. Programs that require this header must be updated to use <regex.h> instead. diff --git a/sysdeps/ieee754/flt-32/e_hypotf.c b/sysdeps/ieee754/flt-32/e_hypotf.c index 8f499b5fde..717b82e42f 100644 --- a/sysdeps/ieee754/flt-32/e_hypotf.c +++ b/sysdeps/ieee754/flt-32/e_hypotf.c @@ -27,17 +27,9 @@ __ieee754_hypotf(float x, float y) GET_FLOAT_WORD(hb,y); hb &= 0x7fffffff; if (ha == 0x7f800000) - { - if (x == y) - return fabsf(y); - return fabsf(x); - } + return fabsf(x); else if (hb == 0x7f800000) - { - if (x == y) - return fabsf(x); - return fabsf(y); - } + return fabsf(y); else if (ha > 0x7f800000 || hb > 0x7f800000) return fabsf(x) * fabsf(y); else if (ha == 0) |