about summary refs log tree commit diff
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
parent1db94db157ed6c9e233178c9f3d21be46a1d181e (diff)
downloadglibc-5b9bf1914248f9ea01b494264e7d3c86d984e0a0.tar.gz
glibc-5b9bf1914248f9ea01b494264e7d3c86d984e0a0.tar.xz
glibc-5b9bf1914248f9ea01b494264e7d3c86d984e0a0.zip
PowerPC: Add DSO and TAR fields to TLS
-rw-r--r--nptl/ChangeLog5
-rw-r--r--nptl/sysdeps/powerpc/tcb-offsets.sym3
-rw-r--r--nptl/sysdeps/powerpc/tls.h5
3 files changed, 13 insertions, 0 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 80025155f1..c27ace4822 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,8 @@
+2011-12-12  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>
+
+	* sysdeps/powerpc/tls.h (struct tcbhead_t): Add DSO and TAR fields.
+	* nptl/sysdeps/powerpc/tcb-offsets.sym: Likewise.
+
 2013-12-09  Carlos O'Donell  <carlos@redhat.com>
 
 	* sysdeps/unix/sysv/linux/tst-setgetname.c: New file.
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.  */