This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug math/18569] [x86/x86_64] expm1l wrong sign of underflowing zero results
- From: "cvs-commit at gcc dot gnu.org" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Sun, 21 Jun 2015 18:44:07 +0000
- Subject: [Bug math/18569] [x86/x86_64] expm1l wrong sign of underflowing zero results
- Auto-submitted: auto-generated
- References: <bug-18569-131 at http dot sourceware dot org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=18569
--- Comment #1 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via cb0937b299182e78307795081489ec1f148bdbd7 (commit)
from fea1d8d67363c8b675a4c2533769ae12dc86efff (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=cb0937b299182e78307795081489ec1f148bdbd7
commit cb0937b299182e78307795081489ec1f148bdbd7
Author: Joseph Myers <joseph@codesourcery.com>
Date: Sun Jun 21 18:43:10 2015 +0000
Fix x86_64 / x86 expm1l (-min_subnorm) result sign (bug 18569).
In the x86 / x86_64 implementations of expm1l, when expm1l's result
should underflow to 0 (argument minus the least subnormal, in some
rounding modes), it can be a zero of the wrong sign. This patch fixes
this by returning the argument with underflow forced in that case
(this is a 1ulp error relative to the correctly rounded result of -0,
which is OK in terms of the documented accuracy goals, whereas a
result with the wrong sign never is).
Tested for x86_64 and x86.
[BZ #18569]
* sysdeps/i386/fpu/e_expl.S (IEEE754_EXPL) [USE_AS_EXPM1L]: Force
underflow and return argument in case of subnormal argument.
* sysdeps/x86_64/fpu/e_expl.S (IEEE754_EXPL) [USE_AS_EXPM1L]:
Likewise.
* math/auto-libm-test-in: Add more tests of expm1.
* math/auto-libm-test-out: Regenerated.
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 8 +
NEWS | 2 +-
math/auto-libm-test-in | 4 +
math/auto-libm-test-out | 316 +++++++++++++++++++++++++++++++++++++++++++
sysdeps/i386/fpu/e_expl.S | 6 +
sysdeps/x86_64/fpu/e_expl.S | 6 +
6 files changed, 341 insertions(+), 1 deletions(-)
--
You are receiving this mail because:
You are on the CC list for the bug.