Lines Matching refs:fxsave
28 static inline unsigned long twd_fxsr_to_i387(struct user_fxsr_struct *fxsave) in twd_fxsr_to_i387() argument
31 unsigned long twd = (unsigned long) fxsave->twd; in twd_fxsr_to_i387()
40 st = (struct _fpxreg *) FPREG_ADDR(fxsave, i); in twd_fxsr_to_i387()
77 struct user_fxsr_struct *fxsave = (void *)target->thread.regs.regs.fp; in fpregs_legacy_get() local
80 membuf_store(&to, (unsigned long)fxsave->cwd | 0xffff0000ul); in fpregs_legacy_get()
81 membuf_store(&to, (unsigned long)fxsave->swd | 0xffff0000ul); in fpregs_legacy_get()
82 membuf_store(&to, twd_fxsr_to_i387(fxsave)); in fpregs_legacy_get()
83 membuf_store(&to, fxsave->fip); in fpregs_legacy_get()
84 membuf_store(&to, fxsave->fcs | ((unsigned long)fxsave->fop << 16)); in fpregs_legacy_get()
85 membuf_store(&to, fxsave->foo); in fpregs_legacy_get()
86 membuf_store(&to, fxsave->fos); in fpregs_legacy_get()
89 membuf_write(&to, (void *)fxsave->st_space + i * 16, 10); in fpregs_legacy_get()
99 struct user_fxsr_struct *fxsave = (void *)target->thread.regs.regs.fp; in fpregs_legacy_set() local
112 fxsave->cwd = (unsigned short)(from->cwd & 0xffff); in fpregs_legacy_set()
113 fxsave->swd = (unsigned short)(from->swd & 0xffff); in fpregs_legacy_set()
114 fxsave->twd = twd_i387_to_fxsr((unsigned short)(from->twd & 0xffff)); in fpregs_legacy_set()
115 fxsave->fip = from->fip; in fpregs_legacy_set()
116 fxsave->fop = (unsigned short)((from->fcs & 0xffff0000ul) >> 16); in fpregs_legacy_set()
117 fxsave->fcs = (from->fcs & 0xffff); in fpregs_legacy_set()
118 fxsave->foo = from->foo; in fpregs_legacy_set()
119 fxsave->fos = from->fos; in fpregs_legacy_set()
122 memcpy((void *)fxsave->st_space + i * 16, in fpregs_legacy_set()