x86: move i387 definitions to processor.h
This patch moves i387 definitions from processor_32.h and processor_64.h to processor.h. They are different. Very different. And there's appearently nothing we can do about it, so they're enclosed inside ifdefs. Signed-off-by: Glauber de Oliveira Costa <gcosta@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
parent
ea5e3593a4
commit
46265df040
3 changed files with 66 additions and 66 deletions
|
@ -227,8 +227,74 @@ struct orig_ist {
|
|||
};
|
||||
|
||||
#ifdef CONFIG_X86_32
|
||||
struct i387_fsave_struct {
|
||||
long cwd;
|
||||
long swd;
|
||||
long twd;
|
||||
long fip;
|
||||
long fcs;
|
||||
long foo;
|
||||
long fos;
|
||||
long st_space[20]; /* 8*10 bytes for each FP-reg = 80 bytes */
|
||||
long status; /* software status information */
|
||||
};
|
||||
|
||||
struct i387_fxsave_struct {
|
||||
unsigned short cwd;
|
||||
unsigned short swd;
|
||||
unsigned short twd;
|
||||
unsigned short fop;
|
||||
long fip;
|
||||
long fcs;
|
||||
long foo;
|
||||
long fos;
|
||||
long mxcsr;
|
||||
long mxcsr_mask;
|
||||
long st_space[32]; /* 8*16 bytes for each FP-reg = 128 bytes */
|
||||
long xmm_space[32]; /* 8*16 bytes for each XMM-reg = 128 bytes */
|
||||
long padding[56];
|
||||
} __attribute__((aligned(16)));
|
||||
|
||||
struct i387_soft_struct {
|
||||
long cwd;
|
||||
long swd;
|
||||
long twd;
|
||||
long fip;
|
||||
long fcs;
|
||||
long foo;
|
||||
long fos;
|
||||
long st_space[20]; /* 8*10 bytes for each FP-reg = 80 bytes */
|
||||
unsigned char ftop, changed, lookahead, no_update, rm, alimit;
|
||||
struct info *info;
|
||||
unsigned long entry_eip;
|
||||
};
|
||||
|
||||
union i387_union {
|
||||
struct i387_fsave_struct fsave;
|
||||
struct i387_fxsave_struct fxsave;
|
||||
struct i387_soft_struct soft;
|
||||
};
|
||||
|
||||
# include "processor_32.h"
|
||||
#else
|
||||
struct i387_fxsave_struct {
|
||||
u16 cwd;
|
||||
u16 swd;
|
||||
u16 twd;
|
||||
u16 fop;
|
||||
u64 rip;
|
||||
u64 rdp;
|
||||
u32 mxcsr;
|
||||
u32 mxcsr_mask;
|
||||
u32 st_space[32]; /* 8*16 bytes for each FP-reg = 128 bytes */
|
||||
u32 xmm_space[64]; /* 16*16 bytes for each XMM-reg = 256 bytes */
|
||||
u32 padding[24];
|
||||
} __attribute__((aligned(16)));
|
||||
|
||||
union i387_union {
|
||||
struct i387_fxsave_struct fxsave;
|
||||
};
|
||||
|
||||
# include "processor_64.h"
|
||||
#endif
|
||||
|
||||
|
|
|
@ -29,55 +29,6 @@ DECLARE_PER_CPU(u8, cpu_llc_id);
|
|||
*/
|
||||
#define TASK_SIZE (PAGE_OFFSET)
|
||||
|
||||
|
||||
struct i387_fsave_struct {
|
||||
long cwd;
|
||||
long swd;
|
||||
long twd;
|
||||
long fip;
|
||||
long fcs;
|
||||
long foo;
|
||||
long fos;
|
||||
long st_space[20]; /* 8*10 bytes for each FP-reg = 80 bytes */
|
||||
long status; /* software status information */
|
||||
};
|
||||
|
||||
struct i387_fxsave_struct {
|
||||
unsigned short cwd;
|
||||
unsigned short swd;
|
||||
unsigned short twd;
|
||||
unsigned short fop;
|
||||
long fip;
|
||||
long fcs;
|
||||
long foo;
|
||||
long fos;
|
||||
long mxcsr;
|
||||
long mxcsr_mask;
|
||||
long st_space[32]; /* 8*16 bytes for each FP-reg = 128 bytes */
|
||||
long xmm_space[32]; /* 8*16 bytes for each XMM-reg = 128 bytes */
|
||||
long padding[56];
|
||||
} __attribute__ ((aligned (16)));
|
||||
|
||||
struct i387_soft_struct {
|
||||
long cwd;
|
||||
long swd;
|
||||
long twd;
|
||||
long fip;
|
||||
long fcs;
|
||||
long foo;
|
||||
long fos;
|
||||
long st_space[20]; /* 8*10 bytes for each FP-reg = 80 bytes */
|
||||
unsigned char ftop, changed, lookahead, no_update, rm, alimit;
|
||||
struct info *info;
|
||||
unsigned long entry_eip;
|
||||
};
|
||||
|
||||
union i387_union {
|
||||
struct i387_fsave_struct fsave;
|
||||
struct i387_fxsave_struct fxsave;
|
||||
struct i387_soft_struct soft;
|
||||
};
|
||||
|
||||
#define INIT_THREAD { \
|
||||
.sp0 = sizeof(init_stack) + (long)&init_stack, \
|
||||
.vm86_info = NULL, \
|
||||
|
|
|
@ -31,23 +31,6 @@
|
|||
#define TASK_SIZE_OF(child) ((test_tsk_thread_flag(child, TIF_IA32)) ? IA32_PAGE_OFFSET : TASK_SIZE64)
|
||||
|
||||
|
||||
struct i387_fxsave_struct {
|
||||
u16 cwd;
|
||||
u16 swd;
|
||||
u16 twd;
|
||||
u16 fop;
|
||||
u64 rip;
|
||||
u64 rdp;
|
||||
u32 mxcsr;
|
||||
u32 mxcsr_mask;
|
||||
u32 st_space[32]; /* 8*16 bytes for each FP-reg = 128 bytes */
|
||||
u32 xmm_space[64]; /* 16*16 bytes for each XMM-reg = 256 bytes */
|
||||
u32 padding[24];
|
||||
} __attribute__ ((aligned (16)));
|
||||
|
||||
union i387_union {
|
||||
struct i387_fxsave_struct fxsave;
|
||||
};
|
||||
|
||||
DECLARE_PER_CPU(struct orig_ist, orig_ist);
|
||||
|
||||
|
|
Loading…
Reference in a new issue