Rev 2479 | Rev 2586 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2479 | Rev 2482 | ||
---|---|---|---|
Line 33... | Line 33... | ||
33 | * @ingroup libcmips32eb |
33 | * @ingroup libcmips32eb |
34 | */ |
34 | */ |
35 | 35 | ||
36 | /* TLS for MIPS is described in http://www.linux-mips.org/wiki/NPTL */ |
36 | /* TLS for MIPS is described in http://www.linux-mips.org/wiki/NPTL */ |
37 | 37 | ||
38 | #ifndef LIBC_mips32THREAD_H_ |
38 | #ifndef LIBC_mips32_THREAD_H_ |
39 | #define LIBC_mips32THREAD_H_ |
39 | #define LIBC_mips32_THREAD_H_ |
40 | 40 | ||
41 | /* I did not find any specification (neither MIPS nor PowerPC), but |
41 | /* I did not find any specification (neither MIPS nor PowerPC), but |
42 | * as I found it |
42 | * as I found it |
43 | * - it uses Variant II |
43 | * - it uses Variant II |
44 | * - TCB is at Address(First TLS Block)+0x7000. |
44 | * - TCB is at Address(First TLS Block)+0x7000. |
Line 51... | Line 51... | ||
51 | * - No assumption about DTV etc., but it will not have a fixed address |
51 | * - No assumption about DTV etc., but it will not have a fixed address |
52 | */ |
52 | */ |
53 | #define MIPS_TP_OFFSET 0x7000 |
53 | #define MIPS_TP_OFFSET 0x7000 |
54 | 54 | ||
55 | typedef struct { |
55 | typedef struct { |
56 | void *pst_data; |
56 | void *fibril_data; |
57 | } tcb_t; |
57 | } tcb_t; |
58 | 58 | ||
59 | static inline void __tcb_set(tcb_t *tcb) |
59 | static inline void __tcb_set(tcb_t *tcb) |
60 | { |
60 | { |
61 | void *tp = tcb; |
61 | void *tp = tcb; |