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.15-266-gf775c27


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  f775c276fd1f89cc9d561db0890a356e7d6e50b8 (commit)
      from  9ea559e401aefe0528600270b62d52195f1347eb (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://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=f775c276fd1f89cc9d561db0890a356e7d6e50b8

commit f775c276fd1f89cc9d561db0890a356e7d6e50b8
Author: Kai Tietz <ktietz@redhat.com>
Date:   Thu Mar 1 16:22:09 2012 +0000

    soft-fp: Support using struct layout attributes on bit-fields.

diff --git a/ChangeLog b/ChangeLog
index e2bc926..a2e0d6c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2012-03-01  Kai Tietz  <ktietz@redhat.com>
+
+	* soft-fp/soft-fp.h (_FP_STRUCT_LAYOUT): New macro.
+	* soft-fp/quad.h (_FP_UNION_Q): Use _FP_STRUCT_LAYOUT on struct
+	containing bit-fields.
+	* soft-fp/extended.h (_FP_UNION_E): Likewise.
+	* soft-fp/single.h (_FP_UNION_S): Likewise.
+	* soft-fp/double.h (_FP_UNION_D): Likewise.
+
 2012-02-29  Joseph Myers  <joseph@codesourcery.com>
 
 	[BZ #13786]
diff --git a/soft-fp/double.h b/soft-fp/double.h
index e247e6e..5bad49c 100644
--- a/soft-fp/double.h
+++ b/soft-fp/double.h
@@ -1,6 +1,6 @@
 /* Software floating-point emulation.
    Definitions for IEEE Double Precision
-   Copyright (C) 1997, 1998, 1999, 2006, 2007, 2008, 2009
+   Copyright (C) 1997, 1998, 1999, 2006, 2007, 2008, 2009, 2012
    Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Richard Henderson (rth@cygnus.com),
@@ -67,7 +67,7 @@ typedef float DFtype __attribute__((mode(DF)));
 union _FP_UNION_D
 {
   DFtype flt;
-  struct {
+  struct _FP_STRUCT_LAYOUT {
 #if __BYTE_ORDER == __BIG_ENDIAN
     unsigned sign  : 1;
     unsigned exp   : _FP_EXPBITS_D;
@@ -166,7 +166,7 @@ union _FP_UNION_D
 union _FP_UNION_D
 {
   DFtype flt;
-  struct {
+  struct _FP_STRUCT_LAYOUT {
 #if __BYTE_ORDER == __BIG_ENDIAN
     unsigned sign   : 1;
     unsigned exp    : _FP_EXPBITS_D;
diff --git a/soft-fp/extended.h b/soft-fp/extended.h
index 3ab6b6a..af9c6e6 100644
--- a/soft-fp/extended.h
+++ b/soft-fp/extended.h
@@ -1,6 +1,6 @@
 /* Software floating-point emulation.
    Definitions for IEEE Extended Precision.
-   Copyright (C) 1999,2006,2007 Free Software Foundation, Inc.
+   Copyright (C) 1999,2006,2007,2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Jakub Jelinek (jj@ultra.linux.cz).
 
@@ -63,7 +63,7 @@ typedef float XFtype __attribute__((mode(XF)));
 union _FP_UNION_E
 {
    XFtype flt;
-   struct 
+   struct _FP_STRUCT_LAYOUT
    {
 #if __BYTE_ORDER == __BIG_ENDIAN
       unsigned long pad1 : _FP_W_TYPE_SIZE;
@@ -262,7 +262,7 @@ union _FP_UNION_E
 union _FP_UNION_E
 {
   XFtype flt;
-  struct {
+  struct _FP_STRUCT_LAYOUT {
 #if __BYTE_ORDER == __BIG_ENDIAN
     _FP_W_TYPE pad  : (_FP_W_TYPE_SIZE - 1 - _FP_EXPBITS_E);
     unsigned sign   : 1;
diff --git a/soft-fp/quad.h b/soft-fp/quad.h
index ea70138..b05bd2d 100644
--- a/soft-fp/quad.h
+++ b/soft-fp/quad.h
@@ -1,6 +1,6 @@
 /* Software floating-point emulation.
    Definitions for IEEE Quad Precision.
-   Copyright (C) 1997,1998,1999,2006,2007 Free Software Foundation, Inc.
+   Copyright (C) 1997,1998,1999,2006,2007,2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Richard Henderson (rth@cygnus.com),
 		  Jakub Jelinek (jj@ultra.linux.cz),
@@ -66,7 +66,7 @@ typedef float TFtype __attribute__((mode(TF)));
 union _FP_UNION_Q
 {
    TFtype flt;
-   struct 
+   struct _FP_STRUCT_LAYOUT
    {
 #if __BYTE_ORDER == __BIG_ENDIAN
       unsigned sign : 1;
@@ -170,10 +170,10 @@ union _FP_UNION_Q
 union _FP_UNION_Q
 {
   TFtype flt /* __attribute__((mode(TF))) */ ;
-  struct {
+  struct _FP_STRUCT_LAYOUT {
     _FP_W_TYPE a, b;
   } longs;
-  struct {
+  struct _FP_STRUCT_LAYOUT {
 #if __BYTE_ORDER == __BIG_ENDIAN
     unsigned sign    : 1;
     unsigned exp     : _FP_EXPBITS_Q;
diff --git a/soft-fp/single.h b/soft-fp/single.h
index c10d25a..119d0db 100644
--- a/soft-fp/single.h
+++ b/soft-fp/single.h
@@ -1,6 +1,6 @@
 /* Software floating-point emulation.
    Definitions for IEEE Single Precision.
-   Copyright (C) 1997,1998,1999,2006 Free Software Foundation, Inc.
+   Copyright (C) 1997,1998,1999,2006,2012 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Richard Henderson (rth@cygnus.com),
 		  Jakub Jelinek (jj@ultra.linux.cz),
@@ -57,7 +57,7 @@ typedef float SFtype __attribute__((mode(SF)));
 union _FP_UNION_S
 {
   SFtype flt;
-  struct {
+  struct _FP_STRUCT_LAYOUT {
 #if __BYTE_ORDER == __BIG_ENDIAN
     unsigned sign : 1;
     unsigned exp  : _FP_EXPBITS_S;
diff --git a/soft-fp/soft-fp.h b/soft-fp/soft-fp.h
index ed4d39d..46cb1cf 100644
--- a/soft-fp/soft-fp.h
+++ b/soft-fp/soft-fp.h
@@ -1,5 +1,5 @@
 /* Software floating-point emulation.
-   Copyright (C) 1997,1998,1999,2000,2002,2003,2005,2006,2007
+   Copyright (C) 1997,1998,1999,2000,2002,2003,2005,2006,2007,2012
 	Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Richard Henderson (rth@cygnus.com),
@@ -84,6 +84,16 @@
 #define FP_EX_DENORM		0
 #endif
 
+/* _FP_STRUCT_LAYOUT may be defined as an attribute to determine the
+   struct layout variant used for structures where bit-fields are used
+   to access specific parts of binary floating-point numbers.  This is
+   required for systems where the default ABI uses struct layout with
+   differences in how consecutive bit-fields are laid out from the
+   default expected by soft-fp.  */
+#ifndef _FP_STRUCT_LAYOUT
+#define _FP_STRUCT_LAYOUT
+#endif
+
 #ifdef _FP_DECL_EX
 #define FP_DECL_EX					\
   int _fex = 0;						\

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

Summary of changes:
 ChangeLog          |    9 +++++++++
 soft-fp/double.h   |    6 +++---
 soft-fp/extended.h |    6 +++---
 soft-fp/quad.h     |    8 ++++----
 soft-fp/single.h   |    4 ++--
 soft-fp/soft-fp.h  |   12 +++++++++++-
 6 files changed, 32 insertions(+), 13 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]