Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 2334 → Rev 2335

/branches/arm/uspace/libc/arch/arm32/include/thread.h
41,28 → 41,27
 
typedef struct {
void *pst_data;
/* TODO */
} tcb_t;
 
static inline void __tcb_set(tcb_t *tcb)
{
void* tmp = (void*)tcb + sizeof(tcb_t);
asm(
void *tls = (void *)tcb + sizeof(tcb_t);
asm volatile (
"mov r9, %0"
:
: "r"(tmp)
: "r"(tls)
);
}
 
static inline tcb_t *__tcb_get(void)
{
void* ret;
asm(
void *ret;
asm volatile (
"mov %0, r9"
: "=r"(ret)
);
ret -= sizeof(tcb_t);
return (tcb_t*)ret;
return (tcb_t *)ret;
}
 
#endif
/branches/arm/uspace/libc/arch/arm32/Makefile.inc
31,7 → 31,7
 
TARGET = arm-linux-gnu
TOOLCHAIN_DIR = /usr/local/arm/bin
CFLAGS += -ffixed-r9
CFLAGS += -ffixed-r9 -mtp=soft
LFLAGS += -N ../softint/libsoftint.a
AFLAGS +=
 
/branches/arm/uspace/libc/arch/arm32/src/entry.s
39,7 → 39,7
__entry:
bl __main
bl __io_init
# bl main
bl main
bl __exit
 
__entry_driver: