Fix ldbl-128ibm expl overflow in non-default rounding modes (bug 19078).
authorJoseph Myers <joseph@codesourcery.com>
Tue, 6 Oct 2015 17:37:49 +0000 (17:37 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Tue, 6 Oct 2015 17:37:49 +0000 (17:37 +0000)
commit6c9678ebd42358f931100130a368fafe375a0ba2
tree31a8266da420a9aacd6054bb0ec9c29b5223ea7d
parentb3364d05892be0170e8f67689736bb9b7597bc94
Fix ldbl-128ibm expl overflow in non-default rounding modes (bug 19078).

The ldbl-128ibm expl wrapper checks the argument to determine when to
call __kernel_standard_l, thereby overriding overflowing results from
__ieee754_expl that could otherwise (given appropriately patched
libgcc) be correct for the rounding mode.  This patch changes it to
check the result of __ieee754_expl instead, as other versions of this
wrapper do.

Tested for powerpc.

[BZ #19078]
* sysdeps/ieee754/ldbl-128ibm/w_expl.c (o_thres): Remove variable.
(u_thres): Likewise.
(__expl): Determine whether to call __kernel_standard_l based on
value of result, not argument.
ChangeLog
NEWS
sysdeps/ieee754/ldbl-128ibm/w_expl.c