On Tue, Oct 27, 2015 at 8:26 AM, Jiong Wang <jiong.w...@foss.arm.com> wrote:
>
>
> On 27/10/15 14:50, H.J. Lu wrote:
>>
>> On Tue, Oct 27, 2015 at 7:34 AM, Ramana Radhakrishnan
>> <ramana.radhakrish...@foss.arm.com> wrote:
>>>>
>>>> OK, then it's fairly x86-64 specific optimization, because we can't do
>>>> "call *mem" in
>>>> aarch64 and some other targets.
>>>
>>> It is a fairly x86_64 specific optimization and doesn't apply to AArch64.
>>>
>>> The question really is what impact does removing the generic code
>>> handling have on aarch64 - is it a no-op or not for the existing -fno-plt
>>> implementation in the AArch64 backend ? The only case that is of interest is
>>> the bit below in calls.c and it looks like that may well be redundant with
>>> the logic in the backend already, but I have not done the full analysis to
>>> convince myself that the code in the backend is sufficient.
>>>
>>> -  && (!flag_plt
>>> -              || lookup_attribute ("noplt", DECL_ATTRIBUTES
>>> (fndecl_or_type)))
>>> -          && !targetm.binds_local_p (fndecl_or_type))
>>>
>> -fno-plt is a backend specific optimization and should be handled
>> in backend.
>>
>
> The removing of those generic code has broken aarch64.
>

Can you handle -fno-plt in aarch64 call expander?

-- 
H.J.

Reply via email to