This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.22-611-g2094350
- From: azanella at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 17 Dec 2015 16:36:26 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.22-611-g2094350
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 2094350c9c9c1b87cf34b193ad6541e4a29b62dc (commit)
from d29d57eed9a6acb646663a02b7eb2bece2c433dc (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=2094350c9c9c1b87cf34b193ad6541e4a29b62dc
commit 2094350c9c9c1b87cf34b193ad6541e4a29b62dc
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Thu Dec 17 12:34:57 2015 -0200
Fix POWER7 logb results for negative subnormals (bug 19375)
The optimized POWER7 logb implementation does not use the absolute
value of the word extracted from the input to apply the leading 0-bits
builtin (to ignore the float sign). This patch fixes it by
clearing the signal bit in the resulting word.
It fixes the subnormal tests failures when running on POWER7 ou
newer chip.
Tested on powerpc64le (POWER8).
[BZ# 19375]
* sysdeps/powerpc/power7/fpu/s_logb.c (__logb): Fix return for
negative subnormals.
diff --git a/ChangeLog b/ChangeLog
index 17b04cd..6cd6d72 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-12-17 Adhemerval Zanella <adhemerval.zanella@linaro.org>
+
+ * sysdeps/powerpc/power7/fpu/s_logb.c (__logb): Fix return for
+ negative subnormals.
+
2015-12-16 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/unix/sysv/linux/x86_64/sysdep.h
diff --git a/sysdeps/powerpc/power7/fpu/s_logb.c b/sysdeps/powerpc/power7/fpu/s_logb.c
index c5feb67..abd1c2a 100644
--- a/sysdeps/powerpc/power7/fpu/s_logb.c
+++ b/sysdeps/powerpc/power7/fpu/s_logb.c
@@ -58,6 +58,7 @@ __logb (double x)
int ma;
EXTRACT_WORDS (ix, lx, x);
+ ix &= 0x7fffffff;
if (ix == 0)
ma = __builtin_clz (lx) + 32;
else
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 5 +++++
sysdeps/powerpc/power7/fpu/s_logb.c | 1 +
2 files changed, 6 insertions(+), 0 deletions(-)
hooks/post-receive
--
GNU C Library master sources