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.19-91-g7d92b78


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  7d92b78723848ae616709eb8f0191ea067025b18 (commit)
      from  2b7f4f2cada566fe5da5b9260b3ca7b21db2a7e6 (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=7d92b78723848ae616709eb8f0191ea067025b18

commit 7d92b78723848ae616709eb8f0191ea067025b18
Author: Joey Ye <joey.ye@arm.com>
Date:   Thu Feb 27 17:44:43 2014 +0000

    Fix ARM NAN fraction bits.
    
    Current ARM soft-float implementation is violating the RTABI
    (http://infocenter.arm.com/help/topic/com.arm.doc.ihi0043d/IHI0043D_rtabi.pdf)
    Section 4.1.1.1:
    
    When not otherwise specified by IEEE 754, the result on an invalid
    operation should be the quiet NaN bit pattern with only the most
    significant bit of the significand set, and all other significand bits
    zero.
    
    This patch fixes it by setting _FP_NANFRAC_* to zero.
    
    Ran make check test with -mfloat-abi=soft. No regression.
    
    	* sysdeps/arm/soft-fp/sfp-machine.h (_FP_NANFRAC_S, _FP_NANFRAC_D)
    	(_FP_NANFRAC_Q): Set to zero.

diff --git a/ChangeLog b/ChangeLog
index af8ada1..98d40f2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2014-02-27  Joey Ye  <joey.ye@arm.com>
+
+	* sysdeps/arm/soft-fp/sfp-machine.h (_FP_NANFRAC_S, _FP_NANFRAC_D)
+	(_FP_NANFRAC_Q): Set to zero.
+
 2014-02-27  Siddhesh Poyarekar  <siddhesh@redhat.com>
 
 	[BZ #16623]
diff --git a/sysdeps/arm/soft-fp/sfp-machine.h b/sysdeps/arm/soft-fp/sfp-machine.h
index 52a08b5..32697fe 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		((_FP_QNANBIT_S << 1) - 1)
-#define _FP_NANFRAC_D		((_FP_QNANBIT_D << 1) - 1), -1
-#define _FP_NANFRAC_Q		((_FP_QNANBIT_Q << 1) - 1), -1, -1, -1
+#define _FP_NANFRAC_S		0
+#define _FP_NANFRAC_D		0, 0
+#define _FP_NANFRAC_Q		0, 0, 0, 0
 #define _FP_NANSIGN_S		0
 #define _FP_NANSIGN_D		0
 #define _FP_NANSIGN_Q		0

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

Summary of changes:
 ChangeLog                         |    5 +++++
 sysdeps/arm/soft-fp/sfp-machine.h |    6 +++---
 2 files changed, 8 insertions(+), 3 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]