[RFC][PATCH 16/22] Add Infinity THREAD_SELF macros to sysdeps/tile/nptl/tls.h

Gary Benson gbenson@redhat.com
Tue Oct 20 15:01:00 GMT 2015


This commit adds Infinity THREAD_SELF macros for tile.
---
 sysdeps/tile/nptl/tls.h |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/sysdeps/tile/nptl/tls.h b/sysdeps/tile/nptl/tls.h
index 08e1d54..b661ae0 100644
--- a/sysdeps/tile/nptl/tls.h
+++ b/sysdeps/tile/nptl/tls.h
@@ -131,6 +131,17 @@ register void *__thread_pointer asm ("tp");
   REGISTER (32, 32, REG_TP * 4, - TLS_TCB_OFFSET - TLS_PRE_TCB_SIZE)
 #endif
 
+/* Magic for Infinity to know how to do THREAD_SELF.  */
+# define I8_THREAD_SELF I8_TS_REGISTER
+# ifdef __tilegx__
+#   define I8_TS_REG_SIZE 64
+#   define I8_TS_REG_OFFSET REG_TP * 8
+# else
+#   define I8_TS_REG_SIZE 32
+#   define I8_TS_REG_OFFSET REG_TP * 4
+# endif
+# define I8_TS_REG_BIAS - TLS_TCB_OFFSET - TLS_PRE_TCB_SIZE
+
 /* Read member of the thread descriptor directly.  */
 # define THREAD_GETMEM(descr, member) (descr->member)
 
-- 
1.7.1



More information about the Libc-alpha mailing list