Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 89 → Rev 90

/SPARTAN/trunk/arch/ia32/src/fpu_context.c
51,28 → 51,30
 
void fpu_lazy_context_save(fpu_context_t *fctx)
{
printf("");
asm(
"mov %0,%%eax;"
"fxsave (%%eax);"
:"=m"(fctx)
:
:"eax"
);
printf("");
asm
(
"push %%eax;"
"mov 0x8(%%esp),%%eax;"
"fnsave (%%eax);"
"pop %%eax;"
:"=m"(fctx)
:
:"eax"
);
}
 
void fpu_lazy_context_restore(fpu_context_t *fctx)
{
printf("");
asm(
"mov %0,%%eax;"
"fxrstor (%%eax);"
:"=m"(fctx)
:
:"eax"
);
printf("");
asm
(
"push %%eax;"
"mov 0x8(%%esp),%%eax;"
"frstor (%%eax);"
"pop %%eax;"
:"=m"(fctx)
:
:"eax"
);
}
 
void fpu_init(void)