This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH glibc 2/2] aarch64: handle STO_AARCH64_VARIANT_PCS
On 07/06/2019 12:54, Szabolcs Nagy wrote:
> Florian: please explain if you still prefer a new dynamic reloc.
ping.
if there are no further comments, i'll go
ahead with the original plan (1), i cannot
hold the abi back indefinitely.
>
> alternatives:
>
> (1) stick to proposed abi text and the posted patches.
> (check st_other flag and force bind now if necessary)
>
> (2) use a new dynamic relocation type for variant pcs
> symbols with PLT entries. (and always force that
> to bind now)
>
> (3) keep the abi text but in static linkers for linux
> reorder PLTs such that variant pcs PLTs come at the
> end and associated relocations and GOT entries are
> moved out of the .rela.plt and .got.plt area.
> (this is backward compatible with existing libcs)
>
> i have a prototype implementation for (3): it is nasty
> because of ifunc PLT handling (many corner cases) and
> it adds an ABI requirement: PLT relocs outside of the
> DT_JMPREL area must not be lazy resolved. (some tools
> may assume all PLT relocs are in the DT_JMPREL area,
> e.g. objdump will not display @plt labels correctly,
> but i don't think anything would be broken by this)
>
> currently my preference is (1) and i'd like to hear some
> feedback if that is still considered problematic.
>