GNU C Library master sources branch master updated. glibc-2.22-326-g31d4459

jsm28@sourceware.org jsm28@sourceware.org
Tue Oct 6 15:32:00 GMT 2015


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  31d4459e42d239fb7d9d3f9532fcf580c6812fb3 (commit)
      from  d79b56892651fcfc1ae0f44d3d29d0fa03538ec1 (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 -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=31d4459e42d239fb7d9d3f9532fcf580c6812fb3

commit 31d4459e42d239fb7d9d3f9532fcf580c6812fb3
Author: Joseph Myers <joseph@codesourcery.com>
Date:   Tue Oct 6 15:32:06 2015 +0000

    Fix ldbl-128ibm logl (1) sign of zero result (bug 19077).
    
    The ldbl-128ibm implementation of logl produces a zero with the wrong
    sign for logl (1) in FE_DOWNWARD mode.  This patch makes it explicitly
    return 0.0L in that case, as in e.g. the ldbl-128 implementation.
    
    Tested for powerpc.
    
    	[BZ #19077]
    	* sysdeps/ieee754/ldbl-128ibm/e_logl.c (__ieee754_logl): Return
    	0.0L for argument 1.0L.

diff --git a/ChangeLog b/ChangeLog
index 17388a7..ac4c1d4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2015-10-06  Joseph Myers  <joseph@codesourcery.com>
 
+	[BZ #19077]
+	* sysdeps/ieee754/ldbl-128ibm/e_logl.c (__ieee754_logl): Return
+	0.0L for argument 1.0L.
+
 	[BZ #19076]
 	* sysdeps/ieee754/ldbl-128ibm/s_log1pl.c (__log1pl): Divide by
 	constant 0.0L when computing infinite result.
diff --git a/NEWS b/NEWS
index b93a5dc..e3c0795 100644
--- a/NEWS
+++ b/NEWS
@@ -18,7 +18,7 @@ Version 2.23
   18820, 18823, 18824, 18825, 18857, 18863, 18870, 18872, 18873, 18875,
   18887, 18921, 18951, 18952, 18956, 18961, 18966, 18967, 18969, 18970,
   18977, 18980, 18981, 18985, 19003, 19012, 19016, 19018, 19032, 19046,
-  19049, 19050, 19059, 19071, 19076.
+  19049, 19050, 19059, 19071, 19076, 19077.
 
 * 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/ldbl-128ibm/e_logl.c b/sysdeps/ieee754/ldbl-128ibm/e_logl.c
index 58d6bc6..dcac380 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_logl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_logl.c
@@ -219,6 +219,8 @@ __ieee754_logl(long double x)
   /* On this interval the table is not used due to cancellation error.  */
   if ((x <= 1.0078125L) && (x >= 0.9921875L))
     {
+      if (x == 1.0L)
+	return 0.0L;
       z = x - 1.0L;
       k = 64;
       t = 1.0L;

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                            |    4 ++++
 NEWS                                 |    2 +-
 sysdeps/ieee754/ldbl-128ibm/e_logl.c |    2 ++
 3 files changed, 7 insertions(+), 1 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources



More information about the Glibc-cvs mailing list