about summary refs log tree commit diff
path: root/nptl/sysdeps
diff options
context:
space:
mode:
authorAdhemerval Zanella <azanella@linux.vnet.ibm.com>2013-12-11 12:10:35 -0600
committerAdhemerval Zanella <azanella@linux.vnet.ibm.com>2013-12-12 06:51:01 -0600
commit5b9bf1914248f9ea01b494264e7d3c86d984e0a0 (patch)
treea62b812a3f8180b3e3bbe6d8530c867f8caae262 /nptl/sysdeps
parent1db94db157ed6c9e233178c9f3d21be46a1d181e (diff)
downloadglibc-5b9bf1914248f9ea01b494264e7d3c86d984e0a0.tar.gz
glibc-5b9bf1914248f9ea01b494264e7d3c86d984e0a0.tar.xz
glibc-5b9bf1914248f9ea01b494264e7d3c86d984e0a0.zip
PowerPC: Add DSO and TAR fields to TLS
Diffstat (limited to 'nptl/sysdeps')
-rw-r--r--nptl/sysdeps/powerpc/tcb-offsets.sym3
-rw-r--r--nptl/sysdeps/powerpc/tls.h5
2 files changed, 8 insertions, 0 deletions
diff --git a/nptl/sysdeps/powerpc/tcb-offsets.sym b/nptl/sysdeps/powerpc/tcb-offsets.sym
index 8ac133dfd0..eac5b5c732 100644
--- a/nptl/sysdeps/powerpc/tcb-offsets.sym
+++ b/nptl/sysdeps/powerpc/tcb-offsets.sym
@@ -15,6 +15,9 @@ MULTIPLE_THREADS_OFFSET		thread_offsetof (header.multiple_threads)
 PID				thread_offsetof (pid)
 TID				thread_offsetof (tid)
 POINTER_GUARD			(offsetof (tcbhead_t, pointer_guard) - TLS_TCB_OFFSET - sizeof (tcbhead_t))
+TAR_SAVE			(offsetof (tcbhead_t, tar_save) - TLS_TCB_OFFSET - sizeof (tcbhead_t))
+DSO_SLOT1			(offsetof (tcbhead_t, dso_slot1) - TLS_TCB_OFFSET - sizeof (tcbhead_t))
+DSO_SLOT2			(offsetof (tcbhead_t, dso_slot2) - TLS_TCB_OFFSET - sizeof (tcbhead_t))
 #ifndef __ASSUME_PRIVATE_FUTEX
 PRIVATE_FUTEX_OFFSET		thread_offsetof (header.private_futex)
 #endif
diff --git a/nptl/sysdeps/powerpc/tls.h b/nptl/sysdeps/powerpc/tls.h
index c21c0271ef..31329c74ee 100644
--- a/nptl/sysdeps/powerpc/tls.h
+++ b/nptl/sysdeps/powerpc/tls.h
@@ -61,6 +61,11 @@ typedef union dtv
    are private.  */
 typedef struct
 {
+  /* Reservation for Dynamic System Optimizer ABI.  */
+  uintptr_t dso_slot2;
+  uintptr_t dso_slot1;
+  /* Reservation for tar register (ISA 2.07).  */
+  uintptr_t tar_save;
   /* GCC split stack support.  */
   void *__private_ss;
   /* Reservation for the Event-Based Branching ABI.  */