This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug math/20296] [i386/x86_64] scalbl returns sNaN for sNaN input, missing "invalid" exceptions
- From: "cvs-commit at gcc dot gnu.org" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Thu, 23 Jun 2016 22:18:49 +0000
- Subject: [Bug math/20296] [i386/x86_64] scalbl returns sNaN for sNaN input, missing "invalid" exceptions
- Auto-submitted: auto-generated
- References: <bug-20296-131 at http dot sourceware dot org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=20296
--- 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 40244be3729149ff440caf18e445ec17b0d0b511 (commit)
from 7ed84b89f344c54dbf8665cb1cd29044bec62d18 (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=40244be3729149ff440caf18e445ec17b0d0b511
commit 40244be3729149ff440caf18e445ec17b0d0b511
Author: Joseph Myers <joseph@codesourcery.com>
Date: Thu Jun 23 22:17:41 2016 +0000
Fix i386/x86_64 scalbl with sNaN input (bug 20296).
The x86_64 and i386 versions of scalbl return sNaN for some cases of
sNaN input and are missing "invalid" exceptions for other cases. This
results from overly complicated code that either returns a NaN input,
or discards both inputs when one is NaN and loads a NaN from memory.
This patch fixes this by simplifying the code to add the arguments
when either one is NaN.
Tested for x86_64 and x86.
[BZ #20296]
* sysdeps/i386/fpu/e_scalbl.S (__ieee754_scalbl): Add arguments
when either argument is a NaN.
* sysdeps/x86_64/fpu/e_scalbl.S (__ieee754_scalbl): Likewise.
* math/libm-test.inc (scalb_test_data): Add sNaN tests.
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 6 ++++++
math/libm-test.inc | 36 ++++++++++++++++++++++++++++++++++++
sysdeps/i386/fpu/e_scalbl.S | 16 +++-------------
sysdeps/x86_64/fpu/e_scalbl.S | 13 +++----------
4 files changed, 48 insertions(+), 23 deletions(-)
--
You are receiving this mail because:
You are on the CC list for the bug.