Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 1018 → Rev 1019

/kernel/trunk/arch/ia32/include/interrupt.h
84,6 → 84,7
extern void gp_fault(int n, istate_t *istate);
extern void nm_fault(int n, istate_t *istate);
extern void ss_fault(int n, istate_t *istate);
extern void simd_fp_exception(int n, istate_t *istate);
extern void page_fault(int n, istate_t *istate);
extern void syscall(int n, istate_t *istate);
extern void tlb_shootdown_ipi(int n, istate_t *istate);
/kernel/trunk/arch/ia32/include/fpu_context.h
34,6 → 34,10
#define ARCH_HAS_FPU
#define FPU_CONTEXT_ALIGN 16
 
void fpu_fxsr(void);
void fpu_fsr(void);
 
 
struct fpu_context {
/* TODO: We need malloc that aligns structures on 16-byte boundary */
__u8 fpu[512]; /* FXSAVE & FXRSTOR storage area */
/kernel/trunk/arch/ia32/include/cpuid.h
38,6 → 38,34
__u32 cpuid_edx;
} __attribute__ ((packed));
 
struct __cpuid_extended_feature_info {
unsigned sse3 : 1;
unsigned : 31;
} __attribute__ ((packed));
 
typedef union cpuid_extended_feature_info
{
struct __cpuid_extended_feature_info bits;
__u32 word;
}cpuid_extended_feature_info;
 
 
struct __cpuid_feature_info {
unsigned : 23;
unsigned mmx : 1;
unsigned fxsr : 1;
unsigned sse : 1;
unsigned sse2 : 1;
unsigned : 5;
} __attribute__ ((packed));
 
typedef union cpuid_feature_info
{
struct __cpuid_feature_info bits;
__u32 word ;
}cpuid_feature_info;
 
 
static inline __u32 has_cpuid(void)
{
__u32 val, ret;
/kernel/trunk/arch/ia32/include/cpu.h
41,4 → 41,7
struct tss *tss;
};
 
 
#define CR4_OSFXSR_MASK (1<<9)
 
#endif