[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: SUN TLS vs. GNU TLS (was Re: ELF TLS ABI vs L4 ABI)
From: |
Marcus Brinkmann |
Subject: |
Re: SUN TLS vs. GNU TLS (was Re: ELF TLS ABI vs L4 ABI) |
Date: |
Thu, 18 Nov 2004 19:52:05 +0100 |
User-agent: |
Wanderlust/2.10.1 (Watching The Wheels) SEMI/1.14.6 (Maruoka) FLIM/1.14.6 (Marutamachi) APEL/10.6 Emacs/21.3 (i386-pc-linux-gnu) MULE/5.0 (SAKAKI) |
At Thu, 18 Nov 2004 19:33:04 +0100,
Espen Skoglund <address@hidden> wrote:
>
> [Marcus Brinkmann]
> > As ELF TLS is intended to be used via the __thread keyword, access
> > to it is done via the language features of the compiler, and can be
> > optimized at the compilers leisure. In particular, GCC can either
> > load the thread pointer and use it with normal memory accesses, or
> > do all writes through the %gs segment register, or a mixture of
> > both.
>
> Sure, *if* gcc does recognize and "optimize" for the GNU ELF TLS
> standard, then it may access the TLS through %gs. I was just assuming
> that the gcc folks were sane enough to not do this (which I hope is
> true). This still doesn't get around optimizing all the hardcoded %gs
> stuff deep within glibc, though.
Check out the i386 config option TARGET_TLS_DIRECT_SEG_REGS in gcc CVS
HEAD. There is an option to switch it on or off, but it is on by
default for GNU/Linux.
Or see also: http://gcc.gnu.org/ml/gcc-patches/2003-06/msg00402.html
Thanks,
Marcus