about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2014-01-03 20:56:18 +0000
committerJoseph Myers <joseph@codesourcery.com>2014-01-03 20:56:40 +0000
commit22562bb222a91e0ecc416b19accd98e10c0d26be (patch)
treeca6a3b3c34c8f2cce47ba4bcb982bfd4d0c481a1
parent0da43124a9b5c24fe2e877e3d94a4f3d859f0486 (diff)
downloadglibc-22562bb222a91e0ecc416b19accd98e10c0d26be.tar.gz
glibc-22562bb222a91e0ecc416b19accd98e10c0d26be.tar.xz
glibc-22562bb222a91e0ecc416b19accd98e10c0d26be.zip
Fix soft-float ldbl-128ibm atan2l signs of zero results (bug 16390).
This patch fixes bug 16390, incorrect signs of zero results from
ldbl-128ibm atan2l, soft-float only.  The problem is a longstanding
GCC bug with fabsl not being correct for signed zero for soft float,
and the fix is using -fno-builtin-fabsl as a workaround, as already
done for various other source files.  Tested powerpc-nofpu.

	* sysdeps/powerpc/nofpu/Makefile [$(subdir) = math]
	(CFLAGS-e_atan2l.c): Use -fno-builtin-fabsl.
-rw-r--r--ChangeLog6
-rw-r--r--NEWS2
-rw-r--r--sysdeps/powerpc/nofpu/Makefile1
3 files changed, 8 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 102967904f..0e6850d43a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2014-01-03  Joseph Myers  <joseph@codesourcery.com>
+
+	[BZ #16390]
+	* sysdeps/powerpc/nofpu/Makefile [$(subdir) = math]
+	(CFLAGS-e_atan2l.c): Use -fno-builtin-fabsl.
+
 2014-01-03  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>
 
 	* sysdeps/powerpc/powerpc64/multiarch/strcasecmp-power7.S: Remove
diff --git a/NEWS b/NEWS
index e0ea97aa0e..7757c32ab7 100644
--- a/NEWS
+++ b/NEWS
@@ -24,7 +24,7 @@ Version 2.19
   16143, 16144, 16146, 16150, 16151, 16153, 16167, 16172, 16195, 16214,
   16245, 16271, 16274, 16283, 16289, 16293, 16314, 16316, 16330, 16337,
   16338, 16356, 16365, 16366, 16369, 16372, 16375, 16379, 16384, 16385,
-  16386.
+  16386, 16390.
 
 * Slovenian translations for glibc messages have been contributed by the
   Translation Project's Slovenian team of translators.
diff --git a/sysdeps/powerpc/nofpu/Makefile b/sysdeps/powerpc/nofpu/Makefile
index 9de7c43747..99761ef7f0 100644
--- a/sysdeps/powerpc/nofpu/Makefile
+++ b/sysdeps/powerpc/nofpu/Makefile
@@ -15,6 +15,7 @@ CPPFLAGS += -I../soft-fp/
 # gcc-4.1.1 and may be too late for gcc-4.2.  So we need these flags
 # until the fix in a gcc release and glibc drops support for earlier
 # versions of gcc.
+CFLAGS-e_atan2l.c += -fno-builtin-fabsl
 CFLAGS-e_hypotl.c += -fno-builtin-fabsl
 CFLAGS-e_powl.c += -fno-builtin-fabsl
 CFLAGS-s_ccoshl.c += -fno-builtin-fabsl