Can this be right?

Andreas Schwab schwab@suse.de
Fri Apr 26 13:59:00 GMT 2002


mike stump <mrs@windriver.com> writes:

|> Can this be right (from src/binutils/src/gas/config/tc-m68k.c):
|> 
|> void
|> md_begin ()
|> {
|> [ ... ]
|> #ifdef OBJ_ELF
|>   record_alignment (text_section, 2);
|>   record_alignment (data_section, 2);
|>   record_alignment (bss_section, 2);
|> #endif
|> }
|> 
|> ?
|> 
|> Surely this is required for a.out also?  I expected ELF to be smarter
|> about alignments making the above unnecessary?  A quick check of other
|> files indicates that elf systems often do this, well, ok, and a quick
|> check of what seem to be aout systems seem to do this as well.
|> 
|> If one has:
|> 
|> .balign 1
|> .byte 1
|> 
|> in 3 files, and then a:
|> .balign 4
|> .byte 2
|> 
|> then on an aout m68k system, the `2' comes out on the wrong address.
|> 
|> Can we make this unconditional?

I can't remember from the m68k-linux-aout times that this ever was a
problem.  a.out doesn't record any alignment in the object file, so it
shouldn't matter anyway.  Don't know about COFF, but the situation might
be similar.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE GmbH, Deutschherrnstr. 15-19, D-90429 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."



More information about the Binutils mailing list