On Sun, May 29, 2016 at 3:13 PM, H.J. Lu <hjl.to...@gmail.com> wrote:
> On Mon, May 9, 2016 at 10:37 AM, H.J. Lu <hjl.to...@gmail.com> wrote:
>> On Fri, Apr 22, 2016 at 6:03 AM, Uros Bizjak <ubiz...@gmail.com> wrote:
>>> On Fri, Apr 22, 2016 at 2:54 PM, H.J. Lu <hjl.to...@gmail.com> wrote:
>>>> For -fno-plt, we load the external function address via the GOT slot
>>>> so that linker won't create an PLT entry for extern function address.
>>>>
>>>> Tested on x86-64. I also built GCC with -fno-plt.  It removes 99% PLT
>>>> entries.  OK for trunk?
>>>>
>>>> H.J.
>>>> --
>>>> gcc/
>>>>
>>>>         PR target/pr67400
>>>>         * config/i386/i386-protos.h (ix86_force_load_from_GOT_p): New.
>>>>         * config/i386/i386.c (ix86_force_load_from_GOT_p): New function.
>>>>         (ix86_legitimate_address_p): Allow UNSPEC_GOTPCREL for
>>>>         ix86_force_load_from_GOT_p returns true.
>>>>         (ix86_print_operand_address): Support UNSPEC_GOTPCREL if
>>>>         ix86_force_load_from_GOT_p returns true.
>>>>         (ix86_expand_move): Load the external function address via the
>>>>         GOT slot if ix86_force_load_from_GOT_p returns true.
>>>>         * config/i386/predicates.md (x86_64_immediate_operand): Return
>>>>         false if ix86_force_load_from_GOT_p returns true.
>>>>
>>>> gcc/testsuite/
>>>>
>>>>         PR target/pr67400
>>>>         * gcc.target/i386/pr67400-1.c: New test.
>>>>         * gcc.target/i386/pr67400-2.c: Likewise.
>>>>         * gcc.target/i386/pr67400-3.c: Likewise.
>>>>         * gcc.target/i386/pr67400-4.c: Likewise.
>>>
>>> Please get someone that knows this linker magic to review the
>>> functionality first. Maybe Jakub can help?
>>>
>>
>> Hi Jakub,
>>
>> Can you review this patch?
>>
>> Thanks.
>
> PING.
>

PING.


-- 
H.J.

Reply via email to