[PATCH] PR gold/17640

Ilya Tocar tocarip.intel@gmail.com
Thu Feb 19 14:27:00 GMT 2015


On 18 Feb 07:48, H.J. Lu wrote:
> On Wed, Feb 18, 2015 at 7:00 AM, Ilya Tocar <tocarip.intel@gmail.com> wrote:
> > On 02 Feb 06:41, H.J. Lu wrote:
> >> On Mon, Feb 2, 2015 at 5:47 AM, Ilya Tocar <tocarip.intel@gmail.com> wrote:
> >> > Hi,
> >> >
> >> > This patch adds mov to lea conversion to gold (as discussed in PR).
> >> > It provides about 1.5% performance gain on SPEC2000 geomean,
> >> > when pie is used.
> >> > OK for trunk?
> >>
> >> The patch is incomplete.  Gold generates a useless R_386_RELATIVE
> >> relocation together with an unused GOT slot:
> >>
> >
> > I've tried to implement this, however I've encountered some difficulties.
> > It looks like not creating got slots/relocation in
> > Target_i386::Scan::local for  R_386_GOT32 (that will be converted to
> > R_386_GOTOFF later) is the right approach.
> > However in Scan::local we don't have access to corresponding view, and so we are
> > unable to check wether we are dealing with mov (which can be optimized),
> > or something else.
> > Can you provide some advice on how to check for mov's in scan?
> 
> Can you add access to view in Scan::local?
>
Scan::local is called from gold::scan_relocs, so passing view into it
will require changes in other targets, which I'd like to avoid.
Also I'm not sure how to get view into instruction that uses
corresponding relocation.



More information about the Binutils mailing list