This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.25-37-gb987917


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  b987917e6aa7ffe2fd74f0b6a989438e6edd0727 (commit)
      from  40b7fbf27310d4f4a899aa2c54740dce5369ec70 (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=b987917e6aa7ffe2fd74f0b6a989438e6edd0727

commit b987917e6aa7ffe2fd74f0b6a989438e6edd0727
Author: Gabriel F. T. Gomes <gftg@linux.vnet.ibm.com>
Date:   Fri Jan 6 13:05:30 2017 -0200

    ldbl-128: Fix y0 and y1 for -Inf input [BZ #21130]
    
    The Bessel functions of the second type (Yn) are not defined for
    negative input and should return NAN with the "invalid" exception
    raised, in these cases.  However, current code checks for infinity and
    return zero, regardless of the sign.  This error is exposed for long
    double when linking with -lieee.  Without this flag, the error is not
    exposed, because the wrappers for these functions, which use
    __kernel_standard functionality, return the correct value.
    
    Tested for powerpc64le.
    
    	[BZ #21130]
    	* sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee754_y0l): Return NAN
    	with the "invalid" exception raised when x is -Inf.
    	* sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_y1l): Likewise.

diff --git a/ChangeLog b/ChangeLog
index fac0e11..27f41f7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2017-02-12  Gabriel F. T. Gomes  <gftg@linux.vnet.ibm.com>
+
+	[BZ #21130]
+	* sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee754_y0l): Return NAN
+	with the "invalid" exception raised when x is -Inf.
+	* sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_y1l): Likewise.
+
 2017-02-10  Wilco Dijkstra  <wdijkstr@arm.com>
 
 	* string/bits/string2.h (strchr): Remove define.
diff --git a/sysdeps/ieee754/ldbl-128/e_j0l.c b/sysdeps/ieee754/ldbl-128/e_j0l.c
index d711007..855b5a5 100644
--- a/sysdeps/ieee754/ldbl-128/e_j0l.c
+++ b/sysdeps/ieee754/ldbl-128/e_j0l.c
@@ -829,12 +829,7 @@ _Float128
   _Float128 xx, xinv, z, p, q, c, s, cc, ss;
 
   if (! isfinite (x))
-    {
-      if (x != x)
-	return x + x;
-      else
-	return 0;
-    }
+    return 1 / (x + x * x);
   if (x <= 0)
     {
       if (x < 0)
diff --git a/sysdeps/ieee754/ldbl-128/e_j1l.c b/sysdeps/ieee754/ldbl-128/e_j1l.c
index 9e78230..db8dca0 100644
--- a/sysdeps/ieee754/ldbl-128/e_j1l.c
+++ b/sysdeps/ieee754/ldbl-128/e_j1l.c
@@ -847,12 +847,7 @@ __ieee754_y1l (_Float128 x)
   _Float128 xx, xinv, z, p, q, c, s, cc, ss;
 
   if (! isfinite (x))
-    {
-      if (x != x)
-	return x + x;
-      else
-	return 0;
-    }
+    return 1 / (x + x * x);
   if (x <= 0)
     {
       if (x < 0)

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

Summary of changes:
 ChangeLog                        |    7 +++++++
 sysdeps/ieee754/ldbl-128/e_j0l.c |    7 +------
 sysdeps/ieee754/ldbl-128/e_j1l.c |    7 +------
 3 files changed, 9 insertions(+), 12 deletions(-)


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]