[PATCH 2/2] bfd/elfnn-aarch64.c: Handle static links with ifunc correctly.
Will Newton
will.newton@linaro.org
Mon Dec 2 08:38:00 GMT 2013
On 26 November 2013 11:06, Marcus Shawcroft <marcus.shawcroft@arm.com> wrote:
> On 26/11/13 10:39, Will Newton wrote:
>>
>> On 26 November 2013 10:34, Marcus Shawcroft <marcus.shawcroft@gmail.com>
>> wrote:
>>>
>>> On 26 November 2013 08:54, Will Newton <will.newton@linaro.org> wrote:
>>>
>>>> - if (info->shared && SYMBOL_REFERENCES_LOCAL (info, h))
>>>> + if (h->def_regular
>>>> + && h->type == STT_GNU_IFUNC)
>>>> + {
>>>> + if (info->shared)
>>>> + {
>>>> + /* Generate R_AARCH64_GLOB_DAT. */
>>>> + goto do_glob_dat;
>>>> + }
>>>> + else
>>>> + {
>>>> + asection *plt;
>>>> +
>>>> + if (!h->pointer_equality_needed)
>>>> + abort ();
>>>
>>>
>>> Is abort() the best option here, can't we spit out a diagnostic and
>>> return?
>>
>>
>> I believe it is really an assert as _bfd_elf_allocate_ifunc_dyn_relocs
>> ensures this condition does not occur. The code is copied from
>> i386/x86_64 for better or worse - I am never quite sure whether it is
>> better to be the same or different in these cases. ;-)
>
>
> If you are confident it is an assert then I'm happy to leave the code the
> same as the donor. In which case this is OK for trunk.
>
> I'd like to see these two IFUNC patches in 2.24, Tristan ?
Hi Tristan,
Are these ok for 2.24?
Thanks,
--
Will Newton
Toolchain Working Group, Linaro
More information about the Binutils
mailing list