kolibrios/programs/develop/libraries/newlib/reent/getreent.c
Sergey Semyonov (Serge) 3459b85059 newlib: remove false dependencies
git-svn-id: svn://kolibrios.org@3593 a494cfbc-eb01-0410-851d-a64ba20cac60
2013-06-03 17:15:09 +00:00

35 lines
529 B
C

/* default reentrant pointer when multithread enabled */
#include <_ansi.h>
#include <string.h>
#include <reent.h>
static inline
void *user_alloc(int size)
{
void *val;
__asm__ __volatile__(
"int $0x40"
:"=eax"(val)
:"a"(68),"b"(12),"c"(size));
return val;
}
void init_reent()
{
struct _reent *ent;
ent = user_alloc(sizeof(struct _reent));
_REENT_INIT_PTR(ent);
__asm__ __volatile__(
"movl %0, %%fs:12"
::"r"(ent));
__sinit(ent);
}