about summary refs log tree commit diff
path: root/nptl/sysdeps/x86_64
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2003-03-14 22:34:02 +0000
committerRoland McGrath <roland@gnu.org>2003-03-14 22:34:02 +0000
commit55c11fbdb046ec06fb9f9bca2ae772a413354c74 (patch)
tree30c4b798aab9a3c4dded8a7332367f229d91f8a0 /nptl/sysdeps/x86_64
parent0eb18281696aa6c39d906cba552ce5438134b4e7 (diff)
downloadglibc-55c11fbdb046ec06fb9f9bca2ae772a413354c74.tar.gz
glibc-55c11fbdb046ec06fb9f9bca2ae772a413354c74.tar.xz
glibc-55c11fbdb046ec06fb9f9bca2ae772a413354c74.zip
2003-03-14 Roland McGrath <roland@redhat.com>
	* descr.h (struct pthread): Move the union out of [!TLS_DTV_AT_TP], so
	we always define the padding space.
	[!TLS_DTV_AT_TP]: Give tcbhead_t field a name, `header', since GCC
	stopped supporting its own extensions fully.
	[TLS_MULTIPLE_THREADS_IN_TCB]: Put `multiple_threads' inside a wrapper
	struct also called `header', so `header.multiple_threads' is the field
	name to use on all machines.
	* allocatestack.c (allocate_stack): Use `header.' prefix.
	* sysdeps/pthread/createthread.c (create_thread): Likewise.
	* pthread_create.c (__pthread_create_2_1): Likewise.
	* sysdeps/i386/tls.h (INSTALL_NEW_DTV, THREAD_DTV): Likewise.
	(THREAD_SELF): Likewise.
	* sysdeps/x86_64/tls.h: Likewise.
	* sysdeps/unix/sysv/linux/i386/sysdep-cancel.h
	(SINGLE_THREAD_P): Likewise.
	* sysdeps/unix/sysv/linux/sh/sysdep-cancel.h
	(SINGLE_THREAD_P): Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h
	(SINGLE_THREAD_P): Likewise.
Diffstat (limited to 'nptl/sysdeps/x86_64')
-rw-r--r--nptl/sysdeps/x86_64/tls.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/nptl/sysdeps/x86_64/tls.h b/nptl/sysdeps/x86_64/tls.h
index fb35b7b40a..e7fab7a1b2 100644
--- a/nptl/sysdeps/x86_64/tls.h
+++ b/nptl/sysdeps/x86_64/tls.h
@@ -92,7 +92,7 @@ typedef struct
 /* Install new dtv for current thread.  */
 # define INSTALL_NEW_DTV(dtvp) \
   ({ struct pthread *__pd;						      \
-     THREAD_SETMEM (__pd, dtv, (dtvp)); })
+     THREAD_SETMEM (__pd, header.dtv, (dtvp)); })
 
 /* Return dtv of given thread descriptor.  */
 # define GET_DTV(descr) \
@@ -136,7 +136,7 @@ typedef struct
 /* Return the address of the dtv for the current thread.  */
 # define THREAD_DTV() \
   ({ struct pthread *__pd;						      \
-     THREAD_GETMEM (__pd, dtv); })
+     THREAD_GETMEM (__pd, header.dtv); })
 
 
 /* Return the thread descriptor for the current thread.
@@ -148,7 +148,7 @@ typedef struct
 # define THREAD_SELF \
   ({ struct pthread *__self;						      \
      asm ("movq %%fs:%c1,%q0" : "=r" (__self)				      \
-	  : "i" (offsetof (struct pthread, self)));		 	      \
+	  : "i" (offsetof (struct pthread, header.self)));	 	      \
      __self;})