On Thu, Jun 4, 2015 at 10:05 AM, Richard Henderson <[email protected]> wrote:
> On 06/04/2015 09:54 AM, Sriraman Tallam wrote:
>> + DECL_ATTRIBUTES (SYMBOL_REF_DECL (XEXP(fnaddr, 0)))))
>
> Spacing.
>
>> {
>> use_reg (&use, gen_rtx_REG (Pmode, REAL_PIC_OFFSET_TABLE_REGNUM));
>> if (ix86_use_pseudo_pic_reg ())
>> @@ -25598,7 +25603,31 @@ ix86_expand_call (rtx retval, rtx fnaddr, rtx call
>>
>> return call;
>> }
>> +/* Return true if the function being called was marked with attribute
>> "noplt"
>
> Vertical spacing.
>
>> + || !TARGET_64BIT || TARGET_MACHO|| TARGET_SEH || TARGET_PECOFF
>
> Spacing.
>
> Otherwise ok.
Made these changes and committed the patch. I had to add one more
check here to check if decl is not null before looking at its
attributes. It was causing a seg fault during boot-strap with libgcc
build.
+ && (SYMBOL_REF_DECL ((XEXP (fnaddr, 0))) == NULL_TREE // This
line was added after the patch was approved.
+ || !lookup_attribute ("noplt",
+ DECL_ATTRIBUTES (SYMBOL_REF_DECL (XEXP (fnaddr, 0))))))
Thanks
Sri
>
>
> r~