This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [patch] coff: fix alignment issues when building on ARM
- From: "H. J. Lu" <hjl at lucon dot org>
- To: Nick Clifton <nickc at redhat dot com>
- Cc: Michael Tautschnig <tautschn at model dot in dot tum dot de>, binutils at sourceware dot org
- Date: Tue, 5 Dec 2006 07:56:41 -0800
- Subject: Re: [patch] coff: fix alignment issues when building on ARM
- References: <20061204212151.GD19904@l03.local> <457595B3.5010008@redhat.com>
On Tue, Dec 05, 2006 at 03:52:19PM +0000, Nick Clifton wrote:
> Hi Michael,
>
> >The issue is the alignment/padding added on ARM, such that the effective
> >size
> >(as reported by sizeof) is 2 bytes larger than the #define'd sizes.
>
> Is it possible to provide a test case that demonstrates this please ?
>
> >This causes
> >invalid coff files to be generated by gas. The attached patch fixed all
> >problems
> >while building gcc packages for the h8300-hitachi-coff target.
>
> Built by what compiler ? On what host machine ?
>
> >--- binutils-h8300-hms-2.16.1.orig/include/coff/external.h
> >+++ binutils-h8300-hms-2.16.1/include/coff/external.h
> >@@ -50,7 +50,7 @@
> > char entry[4]; /* entry pt. */
> > char text_start[4]; /* base of text used for this file */
> > char data_start[4]; /* base of data used for this file */
> >- }
> >+ } __attribute__((packed))
> > AOUTHDR;
>
All fields are char []. Why is __attribute__((packed)) needed?
H.J.