aboutsummaryrefslogtreecommitdiff
path: root/nptl/sysdeps/i386
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/i386
parent0eb18281696aa6c39d906cba552ce5438134b4e7 (diff)
downloadglibc-55c11fbdb046ec06fb9f9bca2ae772a413354c74.tar
glibc-55c11fbdb046ec06fb9f9bca2ae772a413354c74.tar.gz
glibc-55c11fbdb046ec06fb9f9bca2ae772a413354c74.tar.bz2
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/i386')
-rw-r--r--nptl/sysdeps/i386/tls.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/nptl/sysdeps/i386/tls.h b/nptl/sysdeps/i386/tls.h
index 6fb6adca30..eea5e3010d 100644
--- a/nptl/sysdeps/i386/tls.h
+++ b/nptl/sysdeps/i386/tls.h
@@ -122,7 +122,7 @@ union user_desc_init
/* 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) \
@@ -228,7 +228,7 @@ union user_desc_init
/* 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.
@@ -240,7 +240,7 @@ union user_desc_init
# define THREAD_SELF \
({ struct pthread *__self; \
asm ("movl %%gs:%c1,%0" : "=r" (__self) \
- : "i" (offsetof (struct pthread, self))); \
+ : "i" (offsetof (struct pthread, header.self))); \
__self;})