about summary refs log tree commit diff
path: root/nptl
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2004-10-15 07:07:57 +0000
committerRichard Henderson <rth@redhat.com>2004-10-15 07:07:57 +0000
commitf8c97af7bc55992e4579163a25222f403f2a920a (patch)
treef4be9c7464801935b262df232cd4c6598c79c29f /nptl
parent6539c1ad6e56de46c4a077f701a15d8956754aea (diff)
downloadglibc-f8c97af7bc55992e4579163a25222f403f2a920a.tar.gz
glibc-f8c97af7bc55992e4579163a25222f403f2a920a.tar.xz
glibc-f8c97af7bc55992e4579163a25222f403f2a920a.zip
* sysdeps/alpha/tcb-offsets.sym (thread_offsetof): Redefine to make gcc4 happy.
2004-10-14  Richard Henderson  <rth@redhat.com>

	* sysdeps/alpha/tcb-offsets.sym (thread_offsetof): Redefine to
	make gcc4 happy.
Diffstat (limited to 'nptl')
-rw-r--r--nptl/ChangeLog5
-rw-r--r--nptl/sysdeps/alpha/tcb-offsets.sym6
2 files changed, 9 insertions, 2 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 68e643f282..6c47e4400d 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,8 @@
+2004-10-14  Richard Henderson  <rth@redhat.com>
+
+	* sysdeps/alpha/tcb-offsets.sym (thread_offsetof): Redefine to
+	make gcc4 happy.
+
 2004-10-06  Jakub Jelinek  <jakub@redhat.com>
 
 	* sysdeps/unix/sysv/linux/jmp-unwind.c: Include pthreadP.h instead
diff --git a/nptl/sysdeps/alpha/tcb-offsets.sym b/nptl/sysdeps/alpha/tcb-offsets.sym
index 14494ee2cd..ebd84f35e5 100644
--- a/nptl/sysdeps/alpha/tcb-offsets.sym
+++ b/nptl/sysdeps/alpha/tcb-offsets.sym
@@ -4,8 +4,10 @@
 --
 
 -- Abuse tls.h macros to derive offsets relative to the thread register.
-# define __builtin_thread_pointer()  ((void *) 0)
-# define thread_offsetof(mem)	     ((void *) &THREAD_SELF->mem - (void *) 0)
+-- # define __builtin_thread_pointer()  ((void *) 0)
+-- # define thread_offsetof(mem)     ((void *) &THREAD_SELF->mem - (void *) 0)
+-- Ho hum, this doesn't work in gcc4, so Know Things about THREAD_SELF
+#define thread_offsetof(mem)	(long)(offsetof(struct pthread, mem) - sizeof(struct pthread))
 
 MULTIPLE_THREADS_OFFSET		thread_offsetof (header.multiple_threads)
 PID_OFFSET			thread_offsetof (pid)