[MIPS] Drop .dynsym symbol ordering requirement and nullify DT_GNU_XHASH
Maciej W. Rozycki
macro@linux-mips.org
Wed Jan 29 18:59:00 GMT 2020
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
More information about the Binutils
mailing list