This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [MIPS] Drop .dynsym symbol ordering requirement and nullify DT_GNU_XHASH


On Sat, 28 Dec 2019, Fangrui Song wrote:

> As I understand it, the benefits of the symbol ordering requirement come from
> the following:

 There are no benefits; the requirement comes from the GOT being relocated 
implicitly (i.e. without the use of dynamic relocations, as it is usually 
done, and based solely on dynamic entries providing ranges and then the 
correlation between GOT entries and the corresponding dynsym entries), as 
defined by the ELF MIPS psABI, long ago in mid 1990s when ELF was new and 
people were still experimenting with it in various ways.

 You could lift the requirement, but it would be a significant ABI change, 
requiring the addition of suitable dynamic relocations for GOT entries and 
then updating toolchains and runtimes across the world.

 This would typically only be done with an otherwise major incompatible 
change to the ABI, and it has actually been, for the nanoMIPS ISA.

 HTH,

  Maciej


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]