This is the mail archive of the 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.19-431-gdeb0f7f

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  deb0f7f6a825f2a90220bc4e1053d70876efb150 (commit)
      from  79520f4bd611602f5bdb2b50979cf75bb5ac2968 (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 -----------------------------------------------------------------;a=commitdiff;h=deb0f7f6a825f2a90220bc4e1053d70876efb150

commit deb0f7f6a825f2a90220bc4e1053d70876efb150
Author: Maciej W. Rozycki <>
Date:   Fri May 16 22:46:53 2014 +0100

    ARM: soft-fp NaN representation correction
    Commit 7d92b78723848ae616709eb8f0191ea067025b18 [Fix ARM NAN fraction
    bits.] removed all the bits set from NANFRAC macros and, when propagated
    to libgcc, regressed gcc.dg/torture/builtin-math-7.c on soft-fp arm-eabi
    targets, currently ARMv6-M (`-march=armv6-m -mthumb') only.  This is
    because when used to construct a NaN in the semi-raw mode, they now
    build an infinity instead.  Consequently operations such as (Inf - Inf)
    now produce Inf rather than NaN.  The change worked for the original
    test case, posted with PR libgcc/60166, because division is made in the
    canonical mode, where the quiet bit is set separately, from the fp
    This change brings the quiet bit back to these macros, making semi-raw
    mode calculations produce the expected results again.

diff --git a/ChangeLog b/ChangeLog
index 6a6881d..6e913ef 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2014-05-16  Maciej W. Rozycki  <>
+	PR libgcc/60166
+	* sysdeps/arm/soft-fp/sfp-machine.h (_FP_NANFRAC_S, _FP_NANFRAC_D)
+	(_FP_NANSIGN_Q): Set the quiet bit.
 2014-05-16  Joseph Myers  <>
 	* benchtests/Makefile
diff --git a/sysdeps/arm/soft-fp/sfp-machine.h b/sysdeps/arm/soft-fp/sfp-machine.h
index 32697fe..2e7c156 100644
--- a/sysdeps/arm/soft-fp/sfp-machine.h
+++ b/sysdeps/arm/soft-fp/sfp-machine.h
@@ -21,9 +21,9 @@
 #define _FP_DIV_MEAT_D(R,X,Y)	_FP_DIV_MEAT_2_udiv(D,R,X,Y)
 #define _FP_DIV_MEAT_Q(R,X,Y)	_FP_DIV_MEAT_4_udiv(Q,R,X,Y)
-#define _FP_NANFRAC_S		0
-#define _FP_NANFRAC_D		0, 0
-#define _FP_NANFRAC_Q		0, 0, 0, 0
+#define _FP_NANFRAC_D		_FP_QNANBIT_D, 0
+#define _FP_NANFRAC_Q		_FP_QNANBIT_Q, 0, 0, 0
 #define _FP_NANSIGN_S		0
 #define _FP_NANSIGN_D		0
 #define _FP_NANSIGN_Q		0


Summary of changes:
 ChangeLog                         |    6 ++++++
 sysdeps/arm/soft-fp/sfp-machine.h |    6 +++---
 2 files changed, 9 insertions(+), 3 deletions(-)

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]