Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 2345 → Rev 2346

/branches/arm/uspace/libc/arch/arm32/include/thread.h
39,6 → 39,8
 
#define THREAD_INITIAL_STACK_PAGES_NO 1
 
#define ARM_TP_OFFSET (-8)
 
typedef struct {
void *pst_data;
} tcb_t;
45,7 → 47,8
 
static inline void __tcb_set(tcb_t *tcb)
{
void *tls = (void *)tcb + sizeof(tcb_t);
void *tls = (void *)tcb;
tls += sizeof(tcb_t) + ARM_TP_OFFSET;
asm volatile (
"mov r9, %0"
:
60,8 → 63,7
"mov %0, r9"
: "=r"(ret)
);
ret -= sizeof(tcb_t);
return (tcb_t *)ret;
return (tcb_t *)(ret - ARM_TP_OFFSET - sizeof(tcb_t));
}
 
#endif