summary refs log tree commit diff
path: root/linuxthreads/sysdeps/ia64
diff options
context:
space:
mode:
Diffstat (limited to 'linuxthreads/sysdeps/ia64')
-rw-r--r--linuxthreads/sysdeps/ia64/Makefile3
-rw-r--r--linuxthreads/sysdeps/ia64/tcb-offsets.sym4
-rw-r--r--linuxthreads/sysdeps/ia64/tls.h3
3 files changed, 10 insertions, 0 deletions
diff --git a/linuxthreads/sysdeps/ia64/Makefile b/linuxthreads/sysdeps/ia64/Makefile
new file mode 100644
index 0000000000..81bddf688c
--- /dev/null
+++ b/linuxthreads/sysdeps/ia64/Makefile
@@ -0,0 +1,3 @@
+ifeq ($(subdir),csu)
+gen-as-const-headers += tcb-offsets.sym
+endif
diff --git a/linuxthreads/sysdeps/ia64/tcb-offsets.sym b/linuxthreads/sysdeps/ia64/tcb-offsets.sym
new file mode 100644
index 0000000000..aee6be2570
--- /dev/null
+++ b/linuxthreads/sysdeps/ia64/tcb-offsets.sym
@@ -0,0 +1,4 @@
+#include <sysdep.h>
+#include <tls.h>
+
+MULTIPLE_THREADS_OFFSET		offsetof (tcbhead_t, multiple_threads)
diff --git a/linuxthreads/sysdeps/ia64/tls.h b/linuxthreads/sysdeps/ia64/tls.h
index c270795254..544da6e694 100644
--- a/linuxthreads/sysdeps/ia64/tls.h
+++ b/linuxthreads/sysdeps/ia64/tls.h
@@ -44,6 +44,9 @@ typedef struct
   void *self;		/* Pointer to the thread descriptor.  */
   int multiple_threads;
 } tcbhead_t;
+
+#else /* __ASSEMBLER__ */
+# include <tcb-offsets.h>
 #endif /* __ASSEMBLER__ */
 
 #undef USE_TLS