This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug math/20947] fmax, fmin sNaN handling
- From: "cvs-commit at gcc dot gnu.org" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Wed, 14 Dec 2016 22:42:22 +0000
- Subject: [Bug math/20947] fmax, fmin sNaN handling
- Auto-submitted: auto-generated
- References: <bug-20947-131@http.sourceware.org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=20947
--- 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 f02bb0004c5b1944333fd8e74ac1efda3074084b (commit)
from 0acb8a2a855395c25b1feef2470f4d7ca4bed589 (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=f02bb0004c5b1944333fd8e74ac1efda3074084b
commit f02bb0004c5b1944333fd8e74ac1efda3074084b
Author: Joseph Myers <joseph@codesourcery.com>
Date: Wed Dec 14 22:41:26 2016 +0000
Fix generic fmax, fmin sNaN handling (bug 20947).
Various fmax and fmin function implementations mishandle sNaN
arguments:
(a) When both arguments are NaNs, the return value should be a qNaN,
but sometimes it is an sNaN if at least one argument is an sNaN.
(b) Under TS 18661-1 semantics, if either argument is an sNaN then the
result should be a qNaN (whereas if one argument is a qNaN and the
other is not a NaN, the result should be the non-NaN argument).
Various implementations treat sNaNs like qNaNs here.
This patch fixes the generic implementations used in the absence of
architecture-specific versions.
Tested for mips64 and powerpc (together with testcases that I'll add
along with the x86_64 / x86 fixes).
[BZ #20947]
* math/s_fmax_template.c (M_DECL_FUNC (__fmax)): Add the arguments
when either is a signaling NaN.
* math/s_fmin_template.c (M_DECL_FUNC (__fmin)): Likewise.
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 5 +++++
math/s_fmax_template.c | 9 ++++++++-
math/s_fmin_template.c | 9 ++++++++-
3 files changed, 21 insertions(+), 2 deletions(-)
--
You are receiving this mail because:
You are on the CC list for the bug.