deduplicate __pthread_self thread pointer adjustment out of each arch
[musl] / arch / powerpc / pthread_arch.h
index 9697046..a094776 100644 (file)
@@ -1,8 +1,8 @@
-static inline struct pthread *__pthread_self()
+static inline uintptr_t __get_tp()
 {
-       register char *tp __asm__("r2");
+       register uintptr_t tp __asm__("r2");
        __asm__ ("" : "=r" (tp) );
-       return (pthread_t)(tp - 0x7000 - sizeof(struct pthread));
+       return tp;
 }
                         
 #define TLS_ABOVE_TP