2756e7ec1934069e70fb996a680467f904264b39
[musl] / arch / sh / pthread_arch.h
1 static inline struct pthread *__pthread_self()
2 {
3         char *self;
4         __asm__ __volatile__ ("stc gbr,%0" : "=r" (self) );
5         return (struct pthread *) (self + 8 - sizeof(struct pthread));
6 }
7
8 #define TLS_ABOVE_TP
9 #define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread) - 8)
10
11 #define MC_PC sc_pc