This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: [PATCH] PPC linuxthreads tls.h fix
- From: Roland McGrath <roland at redhat dot com>
- To: Alan Modra <amodra at bigpond dot net dot au>
- Cc: Paul Mackerras <paulus at samba dot org>, sjmunroe at vnet dot ibm dot com,libc-alpha <libc-alpha at sources dot redhat dot com>,Franz-Sirl <Franz-Sirl at lauterbach dot com>
- Date: Thu, 27 Feb 2003 18:40:46 -0800
- Subject: Re: [PATCH] PPC linuxthreads tls.h fix
> Sure, I realize Paul is talking about the words after the DTV pointer.
> And our thread register _doesn't_ point to the TCB, rather to the end
> of TCB + 0x7000. Which is why the TCB size and contents are entirely
> a glibc issue for powerpc.
Ah, right! The glibc code uses the names TLS_DTV_AT_TP (variant I) and
TLS_TCB_AT_TP (variant II), matching the two layout styles described in the
original TLS document. PowerPC (and Alpha if it changes to be similar)
actually use a third form that is like TLS_DTV_AT_TP in that positive
offsets are used and that TLS blocks immediately follow the TCB, but due to
the TP bias is like TLS_TCB_AT_TP in that the TCB layout is private to the
implementation and its size does not affect static TLS block offsets.