Home
last modified time | relevance | path

Searched refs:savefpu (Results 1 – 23 of 23) sorted by relevance

/freebsd/sys/i386/i386/
H A Dptrace_machdep.c97 char *savefpu; in cpu_ptrace_xstate() local
106 savefpu = (char *)(get_pcb_user_save_td(td) + 1); in cpu_ptrace_xstate()
107 error = copyout(savefpu, addr, in cpu_ptrace_xstate()
108 cpu_max_ext_state_size - sizeof(union savefpu)); in cpu_ptrace_xstate()
112 if (data > cpu_max_ext_state_size - sizeof(union savefpu)) { in cpu_ptrace_xstate()
116 savefpu = malloc(data, M_TEMP, M_WAITOK); in cpu_ptrace_xstate()
117 error = copyin(addr, savefpu, data); in cpu_ptrace_xstate()
120 error = npxsetxstate(td, savefpu, data); in cpu_ptrace_xstate()
122 free(savefpu, M_TEMP); in cpu_ptrace_xstate()
137 savefpu = (char *)(get_pcb_user_save_td(td)); in cpu_ptrace_xstate()
[all …]
H A Dnpx.c132 #define SET_FPU_CW(savefpu, value) do { \ argument
134 (savefpu)->sv_xmm.sv_env.en_cw = (value); \
136 (savefpu)->sv_87.sv_env.en_cw = (value); \
139 CTASSERT(sizeof(union savefpu) == 512);
159 static void fpurstor(union savefpu *);
175 static union savefpu *npx_initialstate;
289 fpusave_xsaveopt(union savefpu *addr) in fpusave_xsaveopt()
296 fpusave_xsave(union savefpu *addr) in fpusave_xsave()
303 fpusave_fxsave(union savefpu *addr) in fpusave_fxsave()
310 fpusave_fnsave(union savefpu *addr) in fpusave_fnsave()
[all …]
H A Dvm_machdep.c87 union savefpu *
96 return ((union savefpu *)p); in get_pcb_user_save_td()
99 union savefpu *
105 return ((union savefpu *)p); in get_pcb_user_save_pcb()
H A Dexec_machdep.c411 if (cpu_max_ext_state_size > sizeof(union savefpu) && use_xsave) { in sendsig()
412 xfpusave_len = cpu_max_ext_state_size - sizeof(union savefpu); in sendsig()
848 sizeof(union savefpu)) { in sys_sigreturn()
1175 sizeof(union savefpu)) in set_mcontext()
1217 max_len = cpu_max_ext_state_size - sizeof(union savefpu); in get_fpcontext()
1245 error = npxsetregs(td, (union savefpu *)&mcp->mc_fpstate, in set_fpcontext()
H A Dsys_machdep.c265 sizeof(union savefpu)) in sysarch()
/freebsd/sys/amd64/amd64/
H A Dptrace_machdep.c157 char *savefpu; in cpu_ptrace_xstate() local
166 savefpu = (char *)(get_pcb_user_save_td(td) + 1); in cpu_ptrace_xstate()
167 error = copyout(savefpu, addr, in cpu_ptrace_xstate()
168 cpu_max_ext_state_size - sizeof(struct savefpu)); in cpu_ptrace_xstate()
172 if (data > cpu_max_ext_state_size - sizeof(struct savefpu)) { in cpu_ptrace_xstate()
176 savefpu = malloc(data, M_TEMP, M_WAITOK); in cpu_ptrace_xstate()
177 error = copyin(addr, savefpu, data); in cpu_ptrace_xstate()
180 error = fpusetxstate(td, savefpu, data); in cpu_ptrace_xstate()
182 free(savefpu, M_TEMP); in cpu_ptrace_xstate()
212 savefpu = (char *)(get_pcb_user_save_td(td)); in cpu_ptrace_xstate()
[all …]
H A Dfpu.c142 CTASSERT(sizeof(struct savefpu) == 512);
150 CTASSERT(X86_XSTATE_XCR0_OFFSET >= offsetof(struct savefpu, sv_pad) &&
151 X86_XSTATE_XCR0_OFFSET + sizeof(uint64_t) <= sizeof(struct savefpu));
163 static struct savefpu *fpu_initialstate;
342 cpu_max_ext_state_size = sizeof(struct savefpu); in fpuinit_bsp2()
695 struct savefpu *pcb_save; in fputrap_x87()
854 struct savefpu *s; in fpugetregs()
881 xstate_bv = (uint64_t *)(sa + sizeof(struct savefpu) + in fpugetregs()
897 s = (struct savefpu *)sa; in fpugetregs()
947 max_len = cpu_max_ext_state_size - sizeof(struct savefpu); in fpusetxstate()
[all …]
H A Dexec_machdep.c330 sizeof(struct savefpu)) { in sys_sigreturn()
339 fpu_save_area_free((struct savefpu *)xfpustate); in sys_sigreturn()
350 fpu_save_area_free((struct savefpu *)xfpustate); in sys_sigreturn()
547 fill_fpregs_xmm(struct savefpu *sv_xmm, struct fpreg *fpregs) in fill_fpregs_xmm()
577 set_fpregs_xmm(struct fpreg *fpregs, struct savefpu *sv_xmm) in set_fpregs_xmm()
719 sizeof(struct savefpu)) in set_mcontext()
725 fpu_save_area_free((struct savefpu *)xfpustate); in set_mcontext()
731 fpu_save_area_free((struct savefpu *)xfpustate); in set_mcontext()
782 if (!use_xsave || cpu_max_ext_state_size <= sizeof(struct savefpu)) { in get_fpcontext()
788 cpu_max_ext_state_size - sizeof(struct savefpu); in get_fpcontext()
[all …]
H A Dvm_machdep.c86 struct savefpu *
102 struct savefpu *
H A Dsys_machdep.c396 sizeof(struct savefpu)) in sysarch()
/freebsd/sys/i386/include/
H A Dnpx.h59 void npxresume(union savefpu *addr);
60 void npxsave(union savefpu *addr);
61 int npxsetregs(struct thread *td, union savefpu *addr,
65 void npxsuspend(union savefpu *addr);
82 union savefpu *fpu_save_area_alloc(void);
83 void fpu_save_area_free(union savefpu *fsa);
84 void fpu_save_area_reset(union savefpu *fsa);
H A Dmd_var.h53 union savefpu;
80 union savefpu *get_pcb_user_save_td(struct thread *td);
81 union savefpu *get_pcb_user_save_pcb(struct pcb *pcb);
H A Dpcb.h95 union savefpu *pcb_save;
/freebsd/sys/amd64/include/
H A Dfpu.h62 int fpusetregs(struct thread *td, struct savefpu *addr,
79 struct savefpu *fpu_save_area_alloc(void);
80 void fpu_save_area_free(struct savefpu *fsa);
81 void fpu_save_area_reset(struct savefpu *fsa);
H A Dmd_var.h63 struct savefpu;
98 struct savefpu *get_pcb_user_save_td(struct thread *td);
99 struct savefpu *get_pcb_user_save_pcb(struct pcb *pcb);
H A Dpcb.h113 struct savefpu *pcb_save;
H A Dvmm.h136 struct savefpu *guestfpu; /* (a,i) guest fpu state */ \
/freebsd/sys/amd64/linux/
H A Dlinux_sysvec.c283 struct savefpu *fp = (struct savefpu *)&mcp->mc_fpstate[0]; in linux_fxrstor()
296 struct savefpu *fp = (struct savefpu *)&mcp->mc_fpstate[0]; in linux_xrstor()
303 mcp->mc_xfpustate_len = cpu_max_ext_state_size - sizeof(struct savefpu); in linux_xrstor()
316 fpu_save_area_free((struct savefpu *)xfpustate); in linux_xrstor()
326 fpu_save_area_free((struct savefpu *)xfpustate); in linux_xrstor()
333 fpu_save_area_free((struct savefpu *)xfpustate); in linux_xrstor()
/freebsd/sys/x86/include/
H A Dfpu.h123 union savefpu { union
129 struct savefpu { struct
/freebsd/sys/amd64/ia32/
H A Dia32_signal.c116 if (!use_xsave || cpu_max_ext_state_size <= sizeof(struct savefpu)) { in ia32_get_fpcontext()
122 cpu_max_ext_state_size - sizeof(struct savefpu); in ia32_get_fpcontext()
143 error = fpusetregs(td, (struct savefpu *)&mcp->mc_fpstate, in ia32_set_fpcontext()
223 sizeof(struct savefpu)) in ia32_set_mcontext()
229 fpu_save_area_free((struct savefpu *)xfpustate); in ia32_set_mcontext()
235 fpu_save_area_free((struct savefpu *)xfpustate); in ia32_set_mcontext()
893 sizeof(struct savefpu)) { in freebsd32_sigreturn()
902 fpu_save_area_free((struct savefpu *)xfpustate); in freebsd32_sigreturn()
914 fpu_save_area_free((struct savefpu *)xfpustate); in freebsd32_sigreturn()
H A Dia32_reg.c138 struct savefpu *sv_fpu; in fill_fpregs32()
214 struct savefpu *sv_fpu = get_pcb_user_save_td(td); in set_fpregs32()
/freebsd/lib/libc/x86/gen/
H A Dgetcontextx.c46 typedef struct savefpu savex86_t;
/freebsd/tools/test/stress2/misc/
H A Dpkru.sh465 rpku_offset -= sizeof(union savefpu);
467 rpku_offset -= sizeof(struct savefpu);