This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: RFA: MIPS TLS support
On Wed, Mar 09, 2005 at 10:06:00PM +0000, Joseph S. Myers wrote:
I'm ashamed! That's twice I've posted MIPS TLS patches with busted
ChangeLog entries. Please pretend that I included Joseph's name - he
wrote the first version of this code.
> On Wed, 9 Mar 2005, Daniel Jacobowitz wrote:
>
> > The TLS ABI defines the thread pointer access instruction as "rdhwr $3,
> > $29". It has to be that particular instruction, because a fast-path
> > emulation is much more efficient when the destination register is fixed.
>
> The ABI documentation at <http://www.linux-mips.org/wiki/index.php/NPTL>
> hasn't been updated for this fast-path decision, nor for the decision to
> change to %tpoff_lo in place of %lo(%tpoff) (etc.).
Yes. I need to take care of that - I just haven't had a chance.
> > + mips*-*-*)
> > + conftest_s='
> > + .section .tdata,"awT",@progbits
> > +x:
> > + .word 2
> > + .text
> > + lw $25, %call16(__tls_get_addr)($28)
> > + addiu $4, $28, %tlsgd(x)
> > + jalr $25'
> > + tls_first_major=2
> > + tls_first_minor=16
> > + tls_as_opt=--fatal-warnings
>
> Other TLS configure tests test for all the different TLS models, whereas
> this seems to be the initial configure test I wrote to go along with
> initial binutils support for GD only. Although binutils CVS has never had
> support for some models without support for the others, perhaps the
> configure test should nevertheless cover the other models as well?
Maybe. I don't think it makes any difference, to be honest; we
won't be removing the operators.
--
Daniel Jacobowitz
CodeSourcery, LLC