[PATCH] D31528: [ELF][MIPS] Multi-GOT implementation

Rafael Avila de Espindola via llvm-commits llvm-commits at lists.llvm.org
Mon May 29 17:26:49 PDT 2017


Simon Atanasyan via llvm-commits <llvm-commits at lists.llvm.org> writes:

> I do not think that hypothetical MIPS ABI will be _much_ _more_
> similar to other ABIs. For example, as to me I would keep MIPS GOT
> almost the same because it's efficient and works well. Even if a
> dynamic linker starts to recognize multi-GOT, that removes only a few
> lines of code from LLD. And during a long transition period we will
> have to support both variants. Special rules for .dynsym ordering and
> unsupported --hash-style=gnu are tightly related to MIPS GOT. There is
> an oddity in calculation addends for "paired" relocations (R_MIPS_HI16
> / R_MIPS_LO16) but we can consider this issue as fixed in N32 and N64
> ABI. Special sections like .reginfo, .MIPS.options, and .MIPS.abiflags
> are required to describe varieties of MIPS hardware. It's possible to
> rename default entry symbol s/__start/_start/, but it will not make
> LLD code much cleaner.

There is also the part about packing multiple relocations in a single
elf relocation.

Cheers,
Rafael


More information about the llvm-commits mailing list