/branches/arm/uspace/libc/arch/arm32/include/thread.h |
---|
46,21 → 46,23 |
static inline void __tcb_set(tcb_t *tcb) |
{ |
void* tmp = (void*)tcb + sizeof(tcb_t); |
asm( |
"mov r9, %0" |
: |
: "r"(tcb) |
: "r"(tmp) |
); |
} |
static inline tcb_t *__tcb_get(void) |
{ |
tcb_t* ret; |
void* ret; |
asm( |
"mov %0, r9" |
: "=r"(ret) |
); |
return ret; |
ret -= sizeof(tcb_t); |
return (tcb_t*)ret; |
} |
#endif |