6 struct ExecBase
*SysBase
;
7 void * *KernelBase
; /* Base of kernel.resource */
8 struct Task
*ThisTask
; /* Currently running task on this core */
14 #define TLSSF_Quantum (1 << 0)
15 #define TLSSF_Switch (1 << 1)
16 #define TLSSF_Dispatch (1 << 2)
18 #define TLS_OFFSET(name) ((char *)&(((tls_t *)0)->name)-(char *)0)
22 #define TLS_PTR_GET() \
25 asm volatile("mrc p15, 0, %0, c13, c0, 3":"=r"(__tls)); \
29 #define TLS_GET(name) \
32 asm volatile("mrc p15, 0, %0, c13, c0, 3":"=r"(__tls)); \
33 typeof(__tls -> name) __ret = (__tls -> name); \
37 #define TLS_SET(name, val) \
40 asm volatile("mrc p15, 0, %0, c13, c0, 3":"=r"(__tls)); \
41 (__tls -> name) = val; \