/kernel/linux/linux-5.10/arch/x86/um/os-Linux/ |
H A D | registers.c | 21 int save_i387_registers(int pid, unsigned long *fp_regs) in save_i387_registers() argument 23 if (ptrace(PTRACE_GETFPREGS, pid, 0, fp_regs) < 0) in save_i387_registers() 28 int save_fp_registers(int pid, unsigned long *fp_regs) in save_fp_registers() argument 34 iov.iov_base = fp_regs; in save_fp_registers() 41 return save_i387_registers(pid, fp_regs); in save_fp_registers() 44 int restore_i387_registers(int pid, unsigned long *fp_regs) in restore_i387_registers() argument 46 if (ptrace(PTRACE_SETFPREGS, pid, 0, fp_regs) < 0) in restore_i387_registers() 51 int restore_fp_registers(int pid, unsigned long *fp_regs) in restore_fp_registers() argument 56 iov.iov_base = fp_regs; in restore_fp_registers() 63 return restore_i387_registers(pid, fp_regs); in restore_fp_registers() 68 save_fpx_registers(int pid, unsigned long *fp_regs) save_fpx_registers() argument 75 restore_fpx_registers(int pid, unsigned long *fp_regs) restore_fpx_registers() argument 128 void * fp_regs; arch_init_registers() local [all...] |
/kernel/linux/linux-6.6/arch/x86/um/os-Linux/ |
H A D | registers.c | 22 int save_i387_registers(int pid, unsigned long *fp_regs) in save_i387_registers() argument 24 if (ptrace(PTRACE_GETFPREGS, pid, 0, fp_regs) < 0) in save_i387_registers() 29 int save_fp_registers(int pid, unsigned long *fp_regs) in save_fp_registers() argument 35 iov.iov_base = fp_regs; in save_fp_registers() 42 return save_i387_registers(pid, fp_regs); in save_fp_registers() 45 int restore_i387_registers(int pid, unsigned long *fp_regs) in restore_i387_registers() argument 47 if (ptrace(PTRACE_SETFPREGS, pid, 0, fp_regs) < 0) in restore_i387_registers() 52 int restore_fp_registers(int pid, unsigned long *fp_regs) in restore_fp_registers() argument 57 iov.iov_base = fp_regs; in restore_fp_registers() 64 return restore_i387_registers(pid, fp_regs); in restore_fp_registers() 69 save_fpx_registers(int pid, unsigned long *fp_regs) save_fpx_registers() argument 76 restore_fpx_registers(int pid, unsigned long *fp_regs) restore_fpx_registers() argument 129 void * fp_regs; arch_init_registers() local [all...] |
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/aarch64/ |
H A D | get-reg-list.c | 134 case KVM_REG_ARM_CORE_REG(fp_regs.vregs[0]) ... in core_id_to_str() 135 KVM_REG_ARM_CORE_REG(fp_regs.vregs[31]): in core_id_to_str() 136 idx = (core_off - KVM_REG_ARM_CORE_REG(fp_regs.vregs[0])) / CORE_FPREGS_XX_NR_WORDS; in core_id_to_str() 137 TEST_ASSERT(idx < 32, "%s: Unexpected fp_regs.vregs index: %lld", prefix, idx); in core_id_to_str() 138 return strdup_printf("KVM_REG_ARM_CORE_REG(fp_regs.vregs[%lld])", idx); in core_id_to_str() 139 case KVM_REG_ARM_CORE_REG(fp_regs.fpsr): in core_id_to_str() 140 return "KVM_REG_ARM_CORE_REG(fp_regs.fpsr)"; in core_id_to_str() 141 case KVM_REG_ARM_CORE_REG(fp_regs.fpcr): in core_id_to_str() 142 return "KVM_REG_ARM_CORE_REG(fp_regs.fpcr)"; in core_id_to_str() 314 KVM_REG_ARM64 | KVM_REG_SIZE_U32 | KVM_REG_ARM_CORE | KVM_REG_ARM_CORE_REG(fp_regs [all...] |
/kernel/linux/linux-5.10/arch/um/include/shared/ |
H A D | registers.h | 12 extern int save_i387_registers(int pid, unsigned long *fp_regs); 13 extern int restore_i387_registers(int pid, unsigned long *fp_regs); 14 extern int save_fp_registers(int pid, unsigned long *fp_regs); 15 extern int restore_fp_registers(int pid, unsigned long *fp_regs); 16 extern int save_fpx_registers(int pid, unsigned long *fp_regs); 17 extern int restore_fpx_registers(int pid, unsigned long *fp_regs); 21 extern void get_safe_registers(unsigned long *regs, unsigned long *fp_regs);
|
/kernel/linux/linux-6.6/arch/um/include/shared/ |
H A D | registers.h | 11 extern int save_i387_registers(int pid, unsigned long *fp_regs); 12 extern int restore_i387_registers(int pid, unsigned long *fp_regs); 13 extern int save_fp_registers(int pid, unsigned long *fp_regs); 14 extern int restore_fp_registers(int pid, unsigned long *fp_regs); 15 extern int save_fpx_registers(int pid, unsigned long *fp_regs); 16 extern int restore_fpx_registers(int pid, unsigned long *fp_regs); 20 extern void get_safe_registers(unsigned long *regs, unsigned long *fp_regs);
|
/kernel/linux/linux-5.10/tools/testing/selftests/kvm/aarch64/ |
H A D | get-reg-list.c | 115 case KVM_REG_ARM_CORE_REG(fp_regs.vregs[0]) ... in core_id_to_str() 116 KVM_REG_ARM_CORE_REG(fp_regs.vregs[31]): in core_id_to_str() 117 idx = (core_off - KVM_REG_ARM_CORE_REG(fp_regs.vregs[0])) / CORE_FPREGS_XX_NR_WORDS; in core_id_to_str() 118 TEST_ASSERT(idx < 32, "Unexpected fp_regs.vregs index: %lld", idx); in core_id_to_str() 119 return str_with_index("KVM_REG_ARM_CORE_REG(fp_regs.vregs[##])", idx); in core_id_to_str() 120 case KVM_REG_ARM_CORE_REG(fp_regs.fpsr): in core_id_to_str() 121 return "KVM_REG_ARM_CORE_REG(fp_regs.fpsr)"; in core_id_to_str() 122 case KVM_REG_ARM_CORE_REG(fp_regs.fpcr): in core_id_to_str() 123 return "KVM_REG_ARM_CORE_REG(fp_regs.fpcr)"; in core_id_to_str() 273 case KVM_REG_ARM_CORE_REG(fp_regs in core_reg_fixup() [all...] |
/kernel/linux/linux-5.10/arch/sh/kernel/cpu/sh4/ |
H A D | fpu.c | 162 fpu->fp_regs[n] = du; in denormal_to_double() 163 fpu->fp_regs[n + 1] = dl; in denormal_to_double() 248 hx = tsk->thread.xstate->hardfpu.fp_regs[n]; in ieee_fpe_handler() 249 hy = tsk->thread.xstate->hardfpu.fp_regs[m]; in ieee_fpe_handler() 260 | tsk->thread.xstate->hardfpu.fp_regs[n + 1]; in ieee_fpe_handler() 262 | tsk->thread.xstate->hardfpu.fp_regs[m + 1]; in ieee_fpe_handler() 264 tsk->thread.xstate->hardfpu.fp_regs[n] = llx >> 32; in ieee_fpe_handler() 265 tsk->thread.xstate->hardfpu.fp_regs[n + 1] = llx & 0xffffffff; in ieee_fpe_handler() 271 tsk->thread.xstate->hardfpu.fp_regs[n] = hx; in ieee_fpe_handler() 286 hx = tsk->thread.xstate->hardfpu.fp_regs[ in ieee_fpe_handler() [all...] |
/kernel/linux/linux-6.6/arch/sh/kernel/cpu/sh4/ |
H A D | fpu.c | 162 fpu->fp_regs[n] = du; in denormal_to_double() 163 fpu->fp_regs[n + 1] = dl; in denormal_to_double() 248 hx = tsk->thread.xstate->hardfpu.fp_regs[n]; in ieee_fpe_handler() 249 hy = tsk->thread.xstate->hardfpu.fp_regs[m]; in ieee_fpe_handler() 260 | tsk->thread.xstate->hardfpu.fp_regs[n + 1]; in ieee_fpe_handler() 262 | tsk->thread.xstate->hardfpu.fp_regs[m + 1]; in ieee_fpe_handler() 264 tsk->thread.xstate->hardfpu.fp_regs[n] = llx >> 32; in ieee_fpe_handler() 265 tsk->thread.xstate->hardfpu.fp_regs[n + 1] = llx & 0xffffffff; in ieee_fpe_handler() 271 tsk->thread.xstate->hardfpu.fp_regs[n] = hx; in ieee_fpe_handler() 286 hx = tsk->thread.xstate->hardfpu.fp_regs[ in ieee_fpe_handler() [all...] |
/kernel/linux/linux-5.10/arch/sh/kernel/cpu/sh2a/ |
H A D | fpu.c | 393 fpu->fp_regs[n] = du; in denormal_to_double() 394 fpu->fp_regs[n+1] = dl; in denormal_to_double() 473 hx = tsk->thread.xstate->hardfpu.fp_regs[n]; in ieee_fpe_handler() 474 hy = tsk->thread.xstate->hardfpu.fp_regs[m]; in ieee_fpe_handler() 485 | tsk->thread.xstate->hardfpu.fp_regs[n+1]; in ieee_fpe_handler() 487 | tsk->thread.xstate->hardfpu.fp_regs[m+1]; in ieee_fpe_handler() 492 tsk->thread.xstate->hardfpu.fp_regs[n] = llx >> 32; in ieee_fpe_handler() 493 tsk->thread.xstate->hardfpu.fp_regs[n+1] = llx & 0xffffffff; in ieee_fpe_handler() 502 tsk->thread.xstate->hardfpu.fp_regs[n] = hx; in ieee_fpe_handler() 516 hx = tsk->thread.xstate->hardfpu.fp_regs[ in ieee_fpe_handler() [all...] |
/kernel/linux/linux-6.6/arch/sh/kernel/cpu/sh2a/ |
H A D | fpu.c | 393 fpu->fp_regs[n] = du; in denormal_to_double() 394 fpu->fp_regs[n+1] = dl; in denormal_to_double() 473 hx = tsk->thread.xstate->hardfpu.fp_regs[n]; in ieee_fpe_handler() 474 hy = tsk->thread.xstate->hardfpu.fp_regs[m]; in ieee_fpe_handler() 485 | tsk->thread.xstate->hardfpu.fp_regs[n+1]; in ieee_fpe_handler() 487 | tsk->thread.xstate->hardfpu.fp_regs[m+1]; in ieee_fpe_handler() 492 tsk->thread.xstate->hardfpu.fp_regs[n] = llx >> 32; in ieee_fpe_handler() 493 tsk->thread.xstate->hardfpu.fp_regs[n+1] = llx & 0xffffffff; in ieee_fpe_handler() 502 tsk->thread.xstate->hardfpu.fp_regs[n] = hx; in ieee_fpe_handler() 516 hx = tsk->thread.xstate->hardfpu.fp_regs[ in ieee_fpe_handler() [all...] |
/kernel/linux/linux-5.10/tools/testing/selftests/powerpc/tm/ |
H A D | tm-signal-context-chk-fpu.c | 55 fail = (ucp->uc_mcontext.fp_regs[FPR14 + i] != fps[i]); in signal_usr1() 59 FPR14 + i, ucp->uc_mcontext.fp_regs[FPR14 + i], fps[i]); in signal_usr1() 65 fail = (tm_ucp->uc_mcontext.fp_regs[FPR14 + i] != fps[NV_FPU_REGS + i]); in signal_usr1() 69 FPR14 + i, tm_ucp->uc_mcontext.fp_regs[FPR14 + i], fps[NV_FPU_REGS + i]); in signal_usr1()
|
H A D | tm-signal-context-chk-vsx.c | 83 * registers, is kept in fp_regs. in signal_usr1() 92 * part of vsr0-31) is stored in fp_regs. in signal_usr1() 102 * Copy VSX most significant doubleword from fp_regs and in signal_usr1() 106 memcpy(vsx, &ucp->uc_mcontext.fp_regs[FPR20 + i], 8); in signal_usr1() 126 * Copy VSX most significant doubleword from fp_regs and in signal_usr1() 130 memcpy(vsx_tm, &tm_ucp->uc_mcontext.fp_regs[FPR20 + i], 8); in signal_usr1()
|
/kernel/linux/linux-6.6/tools/testing/selftests/powerpc/tm/ |
H A D | tm-signal-context-chk-fpu.c | 55 fail = (ucp->uc_mcontext.fp_regs[FPR14 + i] != fps[i]); in signal_usr1() 59 FPR14 + i, ucp->uc_mcontext.fp_regs[FPR14 + i], fps[i]); in signal_usr1() 65 fail = (tm_ucp->uc_mcontext.fp_regs[FPR14 + i] != fps[NV_FPU_REGS + i]); in signal_usr1() 69 FPR14 + i, tm_ucp->uc_mcontext.fp_regs[FPR14 + i], fps[NV_FPU_REGS + i]); in signal_usr1()
|
H A D | tm-signal-context-chk-vsx.c | 83 * registers, is kept in fp_regs. in signal_usr1() 92 * part of vsr0-31) is stored in fp_regs. in signal_usr1() 102 * Copy VSX most significant doubleword from fp_regs and in signal_usr1() 106 memcpy(vsx, &ucp->uc_mcontext.fp_regs[FPR20 + i], 8); in signal_usr1() 126 * Copy VSX most significant doubleword from fp_regs and in signal_usr1() 130 memcpy(vsx_tm, &tm_ucp->uc_mcontext.fp_regs[FPR20 + i], 8); in signal_usr1()
|
/kernel/linux/linux-5.10/arch/um/os-Linux/ |
H A D | registers.c | 52 void get_safe_registers(unsigned long *regs, unsigned long *fp_regs) in get_safe_registers() argument 56 if (fp_regs) in get_safe_registers() 57 memcpy(fp_regs, exec_fp_regs, sizeof(exec_fp_regs)); in get_safe_registers()
|
/kernel/linux/linux-6.6/arch/um/os-Linux/ |
H A D | registers.c | 52 void get_safe_registers(unsigned long *regs, unsigned long *fp_regs) in get_safe_registers() argument 56 if (fp_regs) in get_safe_registers() 57 memcpy(fp_regs, exec_fp_regs, sizeof(exec_fp_regs)); in get_safe_registers()
|
/kernel/linux/linux-5.10/arch/arm64/kvm/ |
H A D | guest.c | 50 return off >= KVM_REG_ARM_CORE_REG(fp_regs.vregs) && in core_reg_offset_is_vreg() 51 off < KVM_REG_ARM_CORE_REG(fp_regs.fpsr); in core_reg_offset_is_vreg() 76 case KVM_REG_ARM_CORE_REG(fp_regs.vregs[0]) ... in core_reg_size_from_offset() 77 KVM_REG_ARM_CORE_REG(fp_regs.vregs[31]): in core_reg_size_from_offset() 81 case KVM_REG_ARM_CORE_REG(fp_regs.fpsr): in core_reg_size_from_offset() 82 case KVM_REG_ARM_CORE_REG(fp_regs.fpcr): in core_reg_size_from_offset() 152 case KVM_REG_ARM_CORE_REG(fp_regs.vregs[0]) ... in core_reg_addr() 153 KVM_REG_ARM_CORE_REG(fp_regs.vregs[31]): in core_reg_addr() 154 off -= KVM_REG_ARM_CORE_REG(fp_regs.vregs[0]); in core_reg_addr() 156 return &vcpu->arch.ctxt.fp_regs in core_reg_addr() [all...] |
/kernel/linux/linux-6.6/arch/arm64/kvm/ |
H A D | guest.c | 67 return off >= KVM_REG_ARM_CORE_REG(fp_regs.vregs) && in core_reg_offset_is_vreg() 68 off < KVM_REG_ARM_CORE_REG(fp_regs.fpsr); in core_reg_offset_is_vreg() 93 case KVM_REG_ARM_CORE_REG(fp_regs.vregs[0]) ... in core_reg_size_from_offset() 94 KVM_REG_ARM_CORE_REG(fp_regs.vregs[31]): in core_reg_size_from_offset() 98 case KVM_REG_ARM_CORE_REG(fp_regs.fpsr): in core_reg_size_from_offset() 99 case KVM_REG_ARM_CORE_REG(fp_regs.fpcr): in core_reg_size_from_offset() 169 case KVM_REG_ARM_CORE_REG(fp_regs.vregs[0]) ... in core_reg_addr() 170 KVM_REG_ARM_CORE_REG(fp_regs.vregs[31]): in core_reg_addr() 171 off -= KVM_REG_ARM_CORE_REG(fp_regs.vregs[0]); in core_reg_addr() 173 return &vcpu->arch.ctxt.fp_regs in core_reg_addr() [all...] |
/kernel/linux/linux-5.10/arch/s390/kernel/ |
H A D | ptrace.c | 236 } else if (addr < (addr_t) &dummy->regs.fp_regs) { in __peek_user() 239 * orig_gpr2 and fp_regs on s390. in __peek_user() 243 } else if (addr == (addr_t) &dummy->regs.fp_regs.fpc) { in __peek_user() 250 } else if (addr < (addr_t) (&dummy->regs.fp_regs + 1)) { in __peek_user() 255 offset = addr - (addr_t) &dummy->regs.fp_regs.fprs; in __peek_user() 403 } else if (addr < (addr_t) &dummy->regs.fp_regs) { in __poke_user() 406 * orig_gpr2 and fp_regs on s390. in __poke_user() 410 } else if (addr == (addr_t) &dummy->regs.fp_regs.fpc) { in __poke_user() 420 } else if (addr < (addr_t) (&dummy->regs.fp_regs + 1)) { in __poke_user() 425 offset = addr - (addr_t) &dummy->regs.fp_regs in __poke_user() 996 _s390_fp_regs fp_regs; s390_fpregs_get() local [all...] |
/kernel/linux/linux-6.6/arch/s390/kernel/ |
H A D | ptrace.c | 230 } else if (addr < offsetof(struct user, regs.fp_regs)) { in __peek_user() 233 * orig_gpr2 and fp_regs on s390. in __peek_user() 237 } else if (addr == offsetof(struct user, regs.fp_regs.fpc)) { in __peek_user() 244 } else if (addr < offsetof(struct user, regs.fp_regs) + sizeof(s390_fp_regs)) { in __peek_user() 249 offset = addr - offsetof(struct user, regs.fp_regs.fprs); in __peek_user() 377 } else if (addr < offsetof(struct user, regs.fp_regs)) { in __poke_user() 380 * orig_gpr2 and fp_regs on s390. in __poke_user() 384 } else if (addr == offsetof(struct user, regs.fp_regs.fpc)) { in __poke_user() 394 } else if (addr < offsetof(struct user, regs.fp_regs) + sizeof(s390_fp_regs)) { in __poke_user() 399 offset = addr - offsetof(struct user, regs.fp_regs in __poke_user() 890 _s390_fp_regs fp_regs; s390_fpregs_get() local [all...] |
/kernel/linux/linux-5.10/arch/sh/include/asm/ |
H A D | processor_32.h | 67 unsigned long fp_regs[16]; member 77 unsigned long fp_regs[16]; member
|
/kernel/linux/linux-6.6/arch/sh/include/asm/ |
H A D | processor_32.h | 67 unsigned long fp_regs[16]; member 77 unsigned long fp_regs[16]; member
|
/kernel/linux/linux-5.10/arch/arm64/include/asm/ |
H A D | kvm_hyp.h | 90 void __fpsimd_save_state(struct user_fpsimd_state *fp_regs); 91 void __fpsimd_restore_state(struct user_fpsimd_state *fp_regs);
|
/kernel/linux/linux-6.6/arch/arm64/include/asm/ |
H A D | kvm_hyp.h | 110 void __fpsimd_save_state(struct user_fpsimd_state *fp_regs); 111 void __fpsimd_restore_state(struct user_fpsimd_state *fp_regs);
|
/kernel/linux/linux-5.10/arch/powerpc/kernel/ |
H A D | signal_64.c | 144 err |= copy_fpr_to_user(&sc->fp_regs, tsk); in setup_sigcontext() 270 err |= copy_ckfpr_to_user(&sc->fp_regs, tsk); in setup_tm_sigcontexts() 272 err |= copy_fpr_to_user(&tm_sc->fp_regs, tsk); in setup_tm_sigcontexts() 274 err |= copy_ckfpr_to_user(&tm_sc->fp_regs, tsk); in setup_tm_sigcontexts() 394 err |= copy_fpr_from_user(tsk, &sc->fp_regs); in restore_sigcontext() 525 err |= copy_fpr_from_user(tsk, &tm_sc->fp_regs); in restore_tm_sigcontexts() 526 err |= copy_ckfpr_from_user(tsk, &sc->fp_regs); in restore_tm_sigcontexts()
|