This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: TLS support for MIPS
On Tue, Feb 08, 2005 at 09:30:15AM +0000, Richard Sandiford wrote:
> Daniel Jacobowitz <drow@false.org> writes:
> > OK? Comments, questions, things I failed to explain?
>
> Haven't had chance to read the patch in detail yet, but just in case
> it gets a quick review, I thought I'd beter respond to one thing
> straight away...
>
> I don't like the way you've overloaded the %hi(%other(...)) syntax
> to apply to single relocations. I think it should be reserved for
> true composite relocations (i.e. where the output file has both
> R_MIPS_HI16 and R_MIPS_OTHER entries).
>
> We already have separate operators for things like R_MIPS_CALL_HI16 and
> R_MIPS_CALL_LO16, namely %call_hi() and %call_lo()[*]. I think it'd be
> simpler and more consistent to have %dtpoff_hi() and %dtpoff_lo()
> instead. You'd then be able to get rid of hackery like:
I cribbed this approach from PowerPC (@tprel@ha) because it seemed
eminently sensible. If you'd prefer to use single operators instead,
then I guess I can crib from a different architecture instead.
> > + /* %dtpoff may only be used immediately inside %hi or %lo, with no
> > + other relocations. However, use inside %hi and %lo is valid even
> > + with the old ABI which permits only a single relocation.
> > + Similarly, %tpoff may be used inside %hi and %lo even with the
> > + old ABI, but may also be used on its own. Convert these uses to
> > + a single relocation and give an error for other uses. */
> > + for (i = 0; i < reloc_index; i++)
>
> I really think there should be one operator per relocation.
>
> On the same topic, it would be nice if the %op() names and R_MIPS_THINGY
> names were a bit more consistent. The link between alpha's operator
> names and relocation names is much more obvious, for example.
OK. At this point I think that means renaming the relocations; I just
renamed the operators more sanely recently. Anyone have a preference
on the TPREL vs. TPOFF conventions?
--
Daniel Jacobowitz
CodeSourcery, LLC