This is the mail archive of the mailing list for the binutils project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] x86: Generate PLT relocations for -z now

On Thu, May 11, 2017 at 9:44 AM, Carlos O'Donell <> wrote:
> On 05/11/2017 10:51 AM, H.J. Lu wrote:
>> The run-time R_X86_64_GLOB_DAT relocation against foo is
>> required.  There is no need to add another run-time
>> R_X86_64_JUMP_SLOT relocation.  We can add a linker option
>> to generate the extra R_X86_64_JUMP_SLOT.  But I don't think
>> it should be the default.
> I don't disagree with your analysis, I disagree with the execution
> of the plan.
> The plan should be:
> (a) Analyze uses of the PLT entries.
> In this case LD_AUDIT, LD_PROFILE, and ltrace all require them to
> operate correctly.

As I stated before, glibc and GCC have been doing everything we
can to avoid PLT.

> (b) Develop plan for migrating developer tooling, like LD_AUDIT,
>     which is a part of glibc and is well supported.
> (c) Choose one of:
>     (C.1) Make PLT elision optional e.g. -z noplt
>     or
>     (C.2) Make LD_AUDIT work with optimizations.

This is the only option.

> Right now we have ignored dependent tooling that requires this
> feature and have pressed on ahead with optimizations that remove
> a required feature.
> If we don't want to do (C.1), then how do we do (C.2)?
> --
> Cheers,
> Carlos.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]