This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: RFH/RFC: symbol index overflow in MIPS linker stubs...
- From: Thiemo Seufer <ths at networkno dot de>
- To: David Daney <ddaney at avtrex dot com>, binutils at sourceware dot org, richard at codesourcery dot com
- Cc: Rainer Emrich <r dot emrich at de dot tecosim dot com>
- Date: Thu, 8 Jun 2006 19:15:48 +0100
- Subject: Re: RFH/RFC: symbol index overflow in MIPS linker stubs...
- References: <44871E31.1080909@avtrex.com> <877j3rr3an.fsf@talisman.home>
Richard Sandiford wrote:
> David Daney <ddaney@avtrex.com> writes:
> > I think we could easily change the stubs so that they used ori (an
> > unsigned immediate load), instead of li. This would work for symbol
> > tables of size up to 2^16.
> >
> > FWIW: I tested this theory by hand editing the stubs to use the unsigned
> > immediate load and the library now runs correctly.
> >
> > A second option might be to use a two instruction sequence to load t8,
> > but that would change the size of the stubs. I don't know if that would
> > be portable or possible.
>
> I'm with Daniel (if I've understood him correctly): I think it _is_
> worth going the extra mile and only using the longer stubs if the
> largest dynindx requires it.
Thinking again about it, currently the stub fits in a cacheline, so
there might be a bigger performance impact than I estimated before.
IOW, I agree.
[snip]
> I'm a little worried that using longer stubs might confuse the native
> IRIX tools, but I no longer have access to IRIX, so I can't check.
> I don't think that's a problem for the cases that really need it --
> what else can we do? -- but I think it is one reason to prefer the
> traditional stubs when possible.
Probably some IRIX user is interested in testing the patch.
Thiemo