cvs commit: src/lib/libc/gen tls.c src/lib/libc/i386/gen Makefile.inc _set_tp.c src/lib/libc/include libc_private.h src/lib/libthread_xu Makefile pthread.map src/lib/libthread_xu/arch/amd64/amd64 pthread_md.c src/lib/libthread_xu/arch/amd64/include ...

Matthew Dillon dillon at apollo.backplane.com
Tue Mar 29 18:26:32 PST 2005


:
:On Tue, Mar 29, 2005 at 11:26:20AM -0800, Joerg Sonnenberger wrote:
:> joerg       2005/03/29 11:26:20 PST
:> 
:>   Added files:
:>     sys/i386/include     tls.h 
:
:I'm open for any advice how to teach GCC to create correct assembly
:for the #if'd out sections.
:
:Joerg

    As far as GAS is concerned, it's a memory effective address (remove
    the %gs: prefix and it becomes clear). So:

	__asm __volatile ("movl %%gs:%1,%0" : "=r" (self) :
				"m" (((struct tls_tcb *)0)->self));

					-Matt
					Matthew Dillon 
					<dillon at xxxxxxxxxxxxx>





More information about the Commits mailing list