This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: __tls_get_addr interface question.


On Tue, Jan 07, 2003 at 03:08:05PM +0100, Martin Schwidefsky wrote:
> Hi,
> we - that is Ulrich Weigand my myself - have started working on the
> TLS support for s390/s390x. I've done a preliminary binutils patch
> which seems to work. This version uses the standard IA-32 calling
> convention to __tls_get_addr. Now Ulrich came up with an idea
> how to improve the instruction sequences but this requires two
> changes to __tls_get_addr:
> 1) __tls_get_addr would be called with the got offset of a tls_index
>    structure located in the got instead of a pointer to the tls_index
>    structure. 
> 2) __tls_get_addr is to return the offset to the TCB of the variable
>    the tls_index refers to instead of the address.
> With these two changes we could improve the code quality for
> TLS accesses quite a bit.
> The question now is: can we have a s390/s390x version of
> __tls_get_addr with these changes without breaking anything?

The question is if it should be __tls_get_addr and not say __tls_get_offset
on s390*...
Would you be passing %r12 to that routine as another argument
or would it have some assembly wrapper which would do that?

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]