This is the mail archive of the
mailing list for the binutils project.
Re: RFH/RFC: symbol index overflow in MIPS linker stubs...
David Daney <email@example.com> writes:
> There are three ways to do this:
> 1) Always use a 20 byte stub. This allows for up to 2^31 - 1 dynamic
> symbols. You are concerned that this would break IRIX tools.
Well, "would"'s a bit a too strong. It's only a vague "might".
It's o32 I'm particularly worried about: the o32 IRIX tools
are a bit weird.
That wouldn't be much of an argument if it wasn't fairly easy
to do #2 or #3, of course, but it does look fairly easy.
> 2) Use modified 16 byte stub if there are fewer than 2^16 dynamic
> symbols, otherwise use new 20 byte stub.
> 3) Use original 16 byte stub if fewer than 2^15 - 1 dynamic symbols.
> Modified 16 byte stub for 2^15 - 2^16 dynamic symbols. Otherwise, use
> the new 20 byte stub.
> Option #1 is easiest. I already have a working patch.
> Options #2 and #3 are more work, which would you prefer?
I don't really mind. #3 shouldn't be much harder than #2 though -- we
could just make the LI16 vary depending on the dynindx -- so I suppose
it wins as the ultra-safe option.
It's me who's being awkward here, especially since you've already
got a working patch, so I'm happy to try #3 if you like.