4
0
mirror of git://sourceware.org/git/newlib-cygwin.git synced 2025-02-21 16:26:12 +08:00

Define ATTRIBUTE_PACKED and use as necessary.

This commit is contained in:
Nick Clifton 2006-12-06 14:36:41 +00:00
parent bf8ea306ec
commit 017b276a76
6 changed files with 27 additions and 8 deletions

View File

@ -1,3 +1,8 @@
2006-12-05 Michael Tautschnig <tautschn@model.in.tum.de>
Nick Clifton <nickc@redhat.com>
* ansidecl.h (ATTRIBUTE_PACKED): Define.
2006-11-30 Andrew Stubbs <andrew.stubbs@st.com> 2006-11-30 Andrew Stubbs <andrew.stubbs@st.com>
J"orn Rennecke <joern.rennecke@st.com> J"orn Rennecke <joern.rennecke@st.com>

View File

@ -361,6 +361,12 @@ So instead we use the macro below and test it against specific values. */
# endif /* GNUC >= 3.0 */ # endif /* GNUC >= 3.0 */
#endif /* ATTRIBUTE_ALIGNED_ALIGNOF */ #endif /* ATTRIBUTE_ALIGNED_ALIGNOF */
/* Useful for structures whoes layout must much some binary specification
regardless of the alignment and padding qualities of the compiler. */
#ifndef ATTRIBUTE_PACKED
# define ATTRIBUTE_PACKED __attribute__ ((packed))
#endif
/* We use __extension__ in some places to suppress -pedantic warnings /* We use __extension__ in some places to suppress -pedantic warnings
about GCC extensions. This feature didn't work properly before about GCC extensions. This feature didn't work properly before
gcc 2.8. */ gcc 2.8. */

View File

@ -1,3 +1,10 @@
2006-12-05 Michael Tautschnig <tautschn@model.in.tum.de>
Nick Clifton <nickc@redhat.com>
* external.h (struct external_aouthdr): Add ATTRIBUTE_PACKED.
(struct external_syment): Likewise.
(union external_auxent): Likewise.
2006-11-14 Phil Lello <phil.lello@homecall.co.uk> 2006-11-14 Phil Lello <phil.lello@homecall.co.uk>
* pe.h: Added defines for IMAGE_SUBSYSTEM_EFI_ROM and * pe.h: Added defines for IMAGE_SUBSYSTEM_EFI_ROM and

View File

@ -50,7 +50,7 @@ typedef struct external_aouthdr
char entry[4]; /* entry pt. */ char entry[4]; /* entry pt. */
char text_start[4]; /* base of text used for this file */ char text_start[4]; /* base of text used for this file */
char data_start[4]; /* base of data used for this file */ char data_start[4]; /* base of data used for this file */
} } ATTRIBUTE_PACKED
AOUTHDR; AOUTHDR;
#define AOUTHDRSZ 28 #define AOUTHDRSZ 28
@ -164,7 +164,7 @@ struct external_syment
char e_type[2]; char e_type[2];
char e_sclass[1]; char e_sclass[1];
char e_numaux[1]; char e_numaux[1];
}; } ATTRIBUTE_PACKED ;
#define SYMENT struct external_syment #define SYMENT struct external_syment
#define SYMESZ 18 #define SYMESZ 18
@ -256,7 +256,7 @@ union external_auxent
char x_tvlen[2]; /* length of .tv */ char x_tvlen[2]; /* length of .tv */
char x_tvran[2][2]; /* tv range */ char x_tvran[2][2]; /* tv range */
} x_tv; /* info about .tv section (in auxent of symbol .tv)) */ } x_tv; /* info about .tv section (in auxent of symbol .tv)) */
}; } ATTRIBUTE_PACKED ;
#define AUXENT union external_auxent #define AUXENT union external_auxent
#define AUXESZ 18 #define AUXESZ 18

View File

@ -1,3 +1,8 @@
2006-12-05 Michael Tautschnig <tautschn@model.in.tum.de>
Nick Clifton <nickc@redhat.com>
* external.h (struct Elf_External_Versym): Use ATTRIBUTE_PACKED.
2006-10-28 Richard Sandiford <richard@codesourcery.com> 2006-10-28 Richard Sandiford <richard@codesourcery.com>
* mips.h (R_MIPS_GLOB_DAT): Define * mips.h (R_MIPS_GLOB_DAT): Define

View File

@ -245,11 +245,7 @@ typedef struct {
typedef struct { typedef struct {
unsigned char vs_vers[2]; unsigned char vs_vers[2];
} } ATTRIBUTE_PACKED Elf_External_Versym;
#ifdef __GNUC__
__attribute__ ((packed))
#endif
Elf_External_Versym;
/* Structure for syminfo section. */ /* Structure for syminfo section. */
typedef struct typedef struct