Lines Matching refs:fpu
41 static void sync_fpstate(struct fpu *fpu) in sync_fpstate() argument
43 if (fpu == ¤t->thread.fpu) in sync_fpstate()
44 fpu_sync_fpstate(fpu); in sync_fpstate()
55 static void fpu_force_restore(struct fpu *fpu) in fpu_force_restore() argument
61 WARN_ON_FPU(fpu == ¤t->thread.fpu); in fpu_force_restore()
63 __fpu_invalidate_fpregs_state(fpu); in fpu_force_restore()
69 struct fpu *fpu = &target->thread.fpu; in xfpregs_get() local
74 sync_fpstate(fpu); in xfpregs_get()
77 return membuf_write(&to, &fpu->state.fxsave, in xfpregs_get()
78 sizeof(fpu->state.fxsave)); in xfpregs_get()
89 struct fpu *fpu = &target->thread.fpu; in xfpregs_set() local
110 fpu_force_restore(fpu); in xfpregs_set()
113 memcpy(&fpu->state.fxsave, &newstate, sizeof(newstate)); in xfpregs_set()
116 BUILD_BUG_ON(sizeof(fpu->state.fxsave.xmm_space) != 16 * 16); in xfpregs_set()
117 memset(&fpu->state.fxsave.xmm_space[8], 0, 8 * 16); in xfpregs_set()
121 fpu->state.xsave.header.xfeatures |= XFEATURE_MASK_FPSSE; in xfpregs_set()
132 sync_fpstate(&target->thread.fpu); in xstateregs_get()
142 struct fpu *fpu = &target->thread.fpu; in xstateregs_set() local
166 fpu_force_restore(fpu); in xstateregs_set()
167 ret = copy_uabi_from_kernel_to_xstate(&fpu->state.xsave, kbuf ?: tmpbuf); in xstateregs_set()
286 __convert_from_fxsr(env, tsk, &tsk->thread.fpu.state.fxsave); in convert_from_fxsr()
319 struct fpu *fpu = &target->thread.fpu; in fpregs_get() local
323 sync_fpstate(fpu); in fpregs_get()
329 return membuf_write(&to, &fpu->state.fsave, in fpregs_get()
340 fx = &fpu->state.fxsave; in fpregs_get()
351 struct fpu *fpu = &target->thread.fpu; in fpregs_set() local
366 fpu_force_restore(fpu); in fpregs_set()
369 convert_to_fxsr(&fpu->state.fxsave, &env); in fpregs_set()
371 memcpy(&fpu->state.fsave, &env, sizeof(env)); in fpregs_set()
378 fpu->state.xsave.header.xfeatures |= XFEATURE_MASK_FP; in fpregs_set()