PATCH: Don't align text/data/bss sections in x86 assembler
H.J. Lu
hjl.tools@gmail.com
Mon Jun 3 16:49:00 GMT 2013
On Mon, Jun 3, 2013 at 9:28 AM, John Reiser <jreiser@bitwagon.com> wrote:
> On 06/03/2013, H.J. Lu wrote:
>> [[snip]] The section
>> alignment is very arbitrary:
>>
>> 1. Many arches don't do it.
>> 2. Only x86 ELF did it.
>
> x86 ELF did it for a reason. The default addressing convention for 16-bit sections
> (i286) requires paragraph alignment which in hardware is at least 0x10
> but in UNIX traditionally was 0x20. Embedding 16-bit code at the beginning
> of a 32-bit .text section was reasonable and did happen. Recent Linux
> no longer supports virtual86 mode, but there are other OS.
>
0x10 is 16 byte. If one needs 16 byte alignment, one has
to align it by hand.
--
H.J.
More information about the Binutils
mailing list