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.26.9000-780-g58a813b


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  58a813bf6e732211af53e690c92c14a50bb06e0e (commit)
      from  6a6aa1f38959a5d17ff776b252604bece45864dc (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=58a813bf6e732211af53e690c92c14a50bb06e0e

commit 58a813bf6e732211af53e690c92c14a50bb06e0e
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date:   Thu Nov 16 19:52:59 2017 -0200

    aarch64: Fix f{max,min}{f} build for GCC 4.9 and 5
    
    GCC 4.9 and 5 do not generate a correct f{max,min}nm instruction for
    __builtin_{fmax,fmin}{f} without -ffinite-math-only.  It is clear a
    compiler issue since the instruction can handle NaN and Inf correctly
    and GCC6+ does not show this issue.
    
    We can backport a fix to GCC 5, raise the minimum required GCC version
    for aarch64 (since GCC 4.9 branch is now closed [1]) and/or add
    configure check to check for this issue.  However I think
    -ffinite-math-only should be safe for these specific implementations
    and it is a simpler solution.
    
    Checked on aarch64-linux-gnu with GCC 5.3.1.
    
    	* sysdeps/aarch64/fpu/Makefile (CFLAGS-s_fmax.c, CFLAGS-s_fmaxf.c,
    	CFLAGS-s_fmin.c, CFLAGS-s_fminf.c): New rule: add -ffinite-math-only.
    
    [1] https://gcc.gnu.org/ml/gcc/2016-08/msg00010.html
    
    Signed-off-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
    Reviewed-by: Szabolcs Nagy <szabolcs.nagy@arm.com>

diff --git a/ChangeLog b/ChangeLog
index 0d5998f..81b71a5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2017-11-16  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+
+	* sysdeps/aarch64/fpu/Makefile (CFLAGS-s_fmax.c, CFLAGS-s_fmaxf.c,
+	CFLAGS-s_fmin.c, CFLAGS-s_fminf.c): New rule: add -ffinite-math-only.
+
 2017-11-16  Joseph Myers  <joseph@codesourcery.com>
 
 	* sysdeps/unix/sysv/linux/net/if_arp.h (ARPHRD_RAWIP): New macro.
diff --git a/sysdeps/aarch64/fpu/Makefile b/sysdeps/aarch64/fpu/Makefile
index bf38f2c..4a182bd 100644
--- a/sysdeps/aarch64/fpu/Makefile
+++ b/sysdeps/aarch64/fpu/Makefile
@@ -5,4 +5,10 @@ CFLAGS-s_lroundf.c += -fno-math-errno
 CFLAGS-s_lround.c += -fno-math-errno
 CFLAGS-s_llroundf.c += -fno-math-errno
 CFLAGS-s_llround.c += -fno-math-errno
+# GCC 4.9 and 5 requires the flag to correct emits a f{max,min}nm
+# for a __builtin_{fmax,fmin}{f}.
+CFLAGS-s_fmax.c += -ffinite-math-only
+CFLAGS-s_fmaxf.c += -ffinite-math-only
+CFLAGS-s_fmin.c += -ffinite-math-only
+CFLAGS-s_fminf.c += -ffinite-math-only
 endif

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

Summary of changes:
 ChangeLog                    |    5 +++++
 sysdeps/aarch64/fpu/Makefile |    6 ++++++
 2 files changed, 11 insertions(+), 0 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]