mis-elf-as : local/global symbol order in symbol table
Pierre Habraken
Pierre.Habraken@imag.fr
Sun Apr 25 20:20:00 GMT 2010
Ian Lance Taylor wrote:
> Pierre Habraken <Pierre.Habraken@imag.fr> writes:
>
>> The ELF specification states that table all local symbols in a symbol
>> should precede all global symbols.
>> mips-elf-as (binutils 2.20) disregards this rule.
>> Can anyone explain to me the reason for this ?
>
> It's a historical issue. The SGI Irix 5 assembler did not follow this
> rule, and the Irix 5 linker got confused when gas did try to follow
> this rule. As I recall, Irix 5 thought the rule applied to
> STT_SECTION symbols rather than to STB_LOCAL symbols. To work around
> this we (or maybe just me) introduced all the elf_bad_symtab code.
> Later this was extended to the IRIX_COMPAT and SGI_COMPAT code. We
> can probably straighten out mips-elf-as if we try.
Hello Ian,
Thanks for your reply.
I do not know what are "elf_bad_symtab", "IRIX_COMPAT" and "SGI_COMPAT".
I assume that they are code chunks in binutils, are they ?
I have to precise that I am not a mips programmer. I just supervise a
student project in which students have to program an assembler or a
simulator. The mips architecture was choosen for educational reasons
(not for technical reasons). Several students ask us why the "official"
assembler (mips-elf-as !) does not conform to the ELF specification
(this is rather confusing for them). Hence my post.
Pierre
--
Pierre HABRAKEN - mailto:Pierre.Habraken@imag.fr
Tél: 04 76 63 59 94 - Fax: 04 76 51 47 93
More information about the Binutils
mailing list