Relocations reference local (static or hidden) symbols on ia64

Florian Weimer fweimer@redhat.com
Thu Sep 23 20:40:39 GMT 2021


* Andreas Schwab:

> On Sep 23 2021, Florian Weimer via Binutils wrote:
>
>> Relocation section '.rela.dyn' at offset 0xeb8 contains 53 entries:
>>     Offset             Info             Type               Symbol's Value  Symbol's Name + Addend
>> […]
>> 0000000000061608  0000001800000047 R_IA64_FPTR64LSB       000000000001dc00 openaux + 0
>
> This relocation creates the "official" function descriptor for the
> function (which serves as the unique address of the function).

Oh.  _dl_make_fptr is … complex.

For a static function such as openaux, I would have expected the static
linker to allocate space for a function descriptor and initialize it
using an R_IA64_REL64LSB relocation.  Isn't this how other targets with
function pointers handle it?  However I see now that hppa has a similar
relocation (R_PARISC_PLABEL32), but at least that is non-symbolic.

Thanks,
Florian



More information about the Binutils mailing list