Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 1018 → Rev 1019

/kernel/trunk/arch/ia32/src/cpu/cpu.c
92,8 → 92,31
 
void cpu_arch_init(void)
{
__u32 help=0;
CPU->arch.tss = tss_p;
CPU->fpu_owner=NULL;
 
cpuid_feature_info fi;
cpuid_extended_feature_info efi;
 
cpu_info_t info;
cpuid(1, &info);
 
fi.word=info.cpuid_edx;
efi.word=info.cpuid_ecx;
if(fi.bits.fxsr) fpu_fxsr();
else fpu_fsr();
if(fi.bits.sse) asm volatile (
"mov %%cr4,%0;\n"
"or %1,%0;\n"
"mov %0,%%cr4;\n"
:"+r"(help)
:"i"(CR4_OSFXSR_MASK|(1<<10))
);
}