From: Chandrakala Chavva Date: Fri, 4 Aug 2000 18:11:16 +0000 (-0400) Subject: * varasm.c (output_constructor): Add .align 0 for packed vars. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ca2eed217f7de558a5fa3feccfad9ed73e13da1f;p=gcc.git * varasm.c (output_constructor): Add .align 0 for packed vars. From-SVN: r35489 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9d3d182450e..0b35e7377f5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2000-08-04 Chandrakala Chavva + + * varasm.c (output_constructor): Add .align 0 for packed vars. + 2000-08-04 J. David Anglin * configure.in: Use default thread_file even when enable_threads is diff --git a/gcc/varasm.c b/gcc/varasm.c index c79c3806de5..8883cc216c9 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -4472,6 +4472,15 @@ output_constructor (exp, size) assemble_zeros (bitpos - total_bytes); total_bytes = bitpos; } + else if (field != 0 && DECL_PACKED (field)) + { + /* Some assemblers automaticallly align a datum according to + its size if no align directive is specified. The datum, + however, may be declared with 'packed' attribute, so we + have to disable such a feature. */ + + ASM_OUTPUT_ALIGN (asm_out_file, 0); + } /* Determine size this element should occupy. */ if (field)