/linux-6.6.21/arch/mips/kernel/ |
D | asm-offsets.c | 145 OFFSET(THREAD_FPR0, task_struct, thread.fpu.fpr[0]); in output_thread_fpu_defines() 146 OFFSET(THREAD_FPR1, task_struct, thread.fpu.fpr[1]); in output_thread_fpu_defines() 147 OFFSET(THREAD_FPR2, task_struct, thread.fpu.fpr[2]); in output_thread_fpu_defines() 148 OFFSET(THREAD_FPR3, task_struct, thread.fpu.fpr[3]); in output_thread_fpu_defines() 149 OFFSET(THREAD_FPR4, task_struct, thread.fpu.fpr[4]); in output_thread_fpu_defines() 150 OFFSET(THREAD_FPR5, task_struct, thread.fpu.fpr[5]); in output_thread_fpu_defines() 151 OFFSET(THREAD_FPR6, task_struct, thread.fpu.fpr[6]); in output_thread_fpu_defines() 152 OFFSET(THREAD_FPR7, task_struct, thread.fpu.fpr[7]); in output_thread_fpu_defines() 153 OFFSET(THREAD_FPR8, task_struct, thread.fpu.fpr[8]); in output_thread_fpu_defines() 154 OFFSET(THREAD_FPR9, task_struct, thread.fpu.fpr[9]); in output_thread_fpu_defines() [all …]
|
D | ptrace.c | 432 membuf_store(to, get_fpr64(&target->thread.fpu.fpr[i], 0)); in fpr_get_msa() 444 if (sizeof(target->thread.fpu.fpr[0]) == sizeof(elf_fpreg_t)) in fpr_get() 489 set_fpr64(&target->thread.fpu.fpr[i], 0, fpr_val); in fpr_set_msa() 524 if (sizeof(target->thread.fpu.fpr[0]) == sizeof(elf_fpreg_t)) in fpr_set() 616 membuf_write(to, &target->thread.fpu.fpr[i], cp_sz); in copy_pad_fprs() 640 } else if (sizeof(target->thread.fpu.fpr[0]) == regset->size) { in msa_get() 642 membuf_write(&to, &target->thread.fpu.fpr, wr_size); in msa_get() 646 sizeof(target->thread.fpu.fpr[0])); in msa_get() 664 if (sizeof(target->thread.fpu.fpr[0]) == regset->size) { in msa_set() 667 &target->thread.fpu.fpr, in msa_set() [all …]
|
D | unaligned.c | 464 union fpureg *fpr; in emulate_load_store_insn() local 478 fpr = ¤t->thread.fpu.fpr[wd]; in emulate_load_store_insn() 482 if (!access_ok(addr, sizeof(*fpr))) in emulate_load_store_insn() 497 res = __copy_from_user_inatomic(fpr, addr, in emulate_load_store_insn() 498 sizeof(*fpr)); in emulate_load_store_insn() 510 write_msa_wr(wd, fpr, df); in emulate_load_store_insn() 518 if (!access_ok(addr, sizeof(*fpr))) in emulate_load_store_insn() 528 read_msa_wr(wd, fpr, df); in emulate_load_store_insn() 531 res = __copy_to_user_inatomic(addr, fpr, sizeof(*fpr)); in emulate_load_store_insn()
|
/linux-6.6.21/arch/loongarch/kernel/ |
D | asm-offsets.c | 133 OFFSET(THREAD_FPR0, loongarch_fpu, fpr[0]); in output_thread_fpu_defines() 134 OFFSET(THREAD_FPR1, loongarch_fpu, fpr[1]); in output_thread_fpu_defines() 135 OFFSET(THREAD_FPR2, loongarch_fpu, fpr[2]); in output_thread_fpu_defines() 136 OFFSET(THREAD_FPR3, loongarch_fpu, fpr[3]); in output_thread_fpu_defines() 137 OFFSET(THREAD_FPR4, loongarch_fpu, fpr[4]); in output_thread_fpu_defines() 138 OFFSET(THREAD_FPR5, loongarch_fpu, fpr[5]); in output_thread_fpu_defines() 139 OFFSET(THREAD_FPR6, loongarch_fpu, fpr[6]); in output_thread_fpu_defines() 140 OFFSET(THREAD_FPR7, loongarch_fpu, fpr[7]); in output_thread_fpu_defines() 141 OFFSET(THREAD_FPR8, loongarch_fpu, fpr[8]); in output_thread_fpu_defines() 142 OFFSET(THREAD_FPR9, loongarch_fpu, fpr[9]); in output_thread_fpu_defines() [all …]
|
D | ptrace.c | 57 memset(&target->thread.fpu.fpr, ~0, sizeof(target->thread.fpu.fpr)); in init_fp_ctx() 123 return membuf_write(to, &target->thread.fpu.fpr, in gfpr_get() 134 fpr_val = get_fpr64(&target->thread.fpu.fpr[i], 0); in gfpr_get_simd() 153 if (sizeof(target->thread.fpu.fpr[0]) == sizeof(elf_fpreg_t)) in fpr_get() 169 &target->thread.fpu.fpr, in gfpr_set() 187 set_fpr64(&target->thread.fpu.fpr[i], 0, fpr_val); in gfpr_set_simd() 212 if (sizeof(target->thread.fpu.fpr[0]) == sizeof(elf_fpreg_t)) in fpr_set() 271 membuf_write(to, &target->thread.fpu.fpr[i], cp_sz); in copy_pad_fprs() 297 } else if (sizeof(target->thread.fpu.fpr[0]) == regset->size) { in simd_get() 299 membuf_write(&to, &target->thread.fpu.fpr, wr_size); in simd_get() [all …]
|
D | signal.c | 113 __put_user(get_fpr64(¤t->thread.fpu.fpr[i], 0), in copy_fpu_to_sigcontext() 133 set_fpr64(¤t->thread.fpu.fpr[i], 0, fpr_val); in copy_fpu_from_sigcontext() 150 err |= __put_user(get_fpr64(¤t->thread.fpu.fpr[i], 0), in copy_lsx_to_sigcontext() 152 err |= __put_user(get_fpr64(¤t->thread.fpu.fpr[i], 1), in copy_lsx_to_sigcontext() 172 set_fpr64(¤t->thread.fpu.fpr[i], 0, fpr_val); in copy_lsx_from_sigcontext() 174 set_fpr64(¤t->thread.fpu.fpr[i], 1, fpr_val); in copy_lsx_from_sigcontext() 191 err |= __put_user(get_fpr64(¤t->thread.fpu.fpr[i], 0), in copy_lasx_to_sigcontext() 193 err |= __put_user(get_fpr64(¤t->thread.fpu.fpr[i], 1), in copy_lasx_to_sigcontext() 195 err |= __put_user(get_fpr64(¤t->thread.fpu.fpr[i], 2), in copy_lasx_to_sigcontext() 197 err |= __put_user(get_fpr64(¤t->thread.fpu.fpr[i], 3), in copy_lasx_to_sigcontext() [all …]
|
/linux-6.6.21/tools/testing/selftests/powerpc/ptrace/ |
D | ptrace-gpr.h | 39 int validate_fpr(__u64 *fpr, __u64 val) in validate_fpr() argument 44 if (fpr[i] != val) { in validate_fpr() 45 printf("FPR[%d]: %llx Expected: %llx\n", i, fpr[i], val); in validate_fpr() 56 int validate_fpr_double(double *fpr, double val) in validate_fpr_double() argument 61 if (fpr[i] != val) { in validate_fpr_double() 62 printf("FPR[%d]: %f Expected: %f\n", i, fpr[i], val); in validate_fpr_double()
|
D | ptrace-tm-gpr.c | 90 __u64 fpr[32]; in trace_tm_gpr() local 95 FAIL_IF(show_fpr(child, fpr)); in trace_tm_gpr() 96 FAIL_IF(validate_fpr(fpr, FPR_2_REP)); in trace_tm_gpr() 97 FAIL_IF(show_ckpt_fpr(child, fpr)); in trace_tm_gpr() 98 FAIL_IF(validate_fpr(fpr, FPR_1_REP)); in trace_tm_gpr()
|
D | ptrace-tm-spd-gpr.c | 96 __u64 fpr[32]; in trace_tm_spd_gpr() local 101 FAIL_IF(show_fpr(child, fpr)); in trace_tm_spd_gpr() 102 FAIL_IF(validate_fpr(fpr, FPR_4_REP)); in trace_tm_spd_gpr() 103 FAIL_IF(show_ckpt_fpr(child, fpr)); in trace_tm_spd_gpr() 104 FAIL_IF(validate_fpr(fpr, FPR_1_REP)); in trace_tm_spd_gpr()
|
D | ptrace.h | 37 __u64 fpr[32]; member 325 int show_fpr(pid_t child, __u64 *fpr) in show_fpr() argument 337 if (fpr) { in show_fpr() 339 fpr[i] = regs->fpr[i]; in show_fpr() 357 regs->fpr[i] = val; in write_fpr() 367 int show_ckpt_fpr(pid_t child, __u64 *fpr) in show_ckpt_fpr() argument 383 if (fpr) { in show_ckpt_fpr() 385 fpr[i] = regs->fpr[i]; in show_ckpt_fpr() 408 regs->fpr[i] = val; in write_ckpt_fpr()
|
D | ptrace-gpr.c | 49 __u64 tmp, fpr[32], *peeked_fprs; in trace_gpr() local 59 FAIL_IF(show_fpr(child, fpr)); in trace_gpr() 61 FAIL_IF(validate_fpr(fpr, tmp)); in trace_gpr()
|
/linux-6.6.21/kernel/trace/ |
D | fprobe.c | 27 struct fprobe_rethook_node *fpr; in __fprobe_handler() local 41 fpr = container_of(rh, struct fprobe_rethook_node, node); in __fprobe_handler() 42 fpr->entry_ip = ip; in __fprobe_handler() 43 fpr->entry_parent_ip = parent_ip; in __fprobe_handler() 45 entry_data = fpr->data; in __fprobe_handler() 126 struct fprobe_rethook_node *fpr; in fprobe_exit_handler() local 132 fpr = container_of(rh, struct fprobe_rethook_node, node); in fprobe_exit_handler() 138 bit = ftrace_test_recursion_trylock(fpr->entry_ip, fpr->entry_parent_ip); in fprobe_exit_handler() 144 fp->exit_handler(fp, fpr->entry_ip, ret_ip, regs, in fprobe_exit_handler() 145 fp->entry_data_size ? (void *)fpr->data : NULL); in fprobe_exit_handler()
|
/linux-6.6.21/arch/powerpc/kernel/ |
D | signal.h | 67 unsafe_put_user(__t->thread.fp_state.fpr[i][TS_VSRLOWOFFSET], \ 87 unsafe_get_user(__t->thread.fp_state.fpr[i][TS_VSRLOWOFFSET], \ 108 unsafe_put_user(__t->thread.ckfp_state.fpr[i][TS_VSRLOWOFFSET], \ 128 unsafe_get_user(__t->thread.ckfp_state.fpr[i][TS_VSRLOWOFFSET], \ 135 unsafe_copy_to_user(to, (task)->thread.fp_state.fpr, \ 139 unsafe_copy_from_user((task)->thread.fp_state.fpr, from, \ 145 return __copy_to_user(to, task->thread.fp_state.fpr, in copy_fpr_to_user() 152 return __copy_from_user(task->thread.fp_state.fpr, from, in copy_fpr_from_user() 158 unsafe_copy_to_user(to, (task)->thread.ckfp_state.fpr, \ 163 return __copy_to_user(to, task->thread.ckfp_state.fpr, in copy_ckfpr_to_user() [all …]
|
D | signal.c | 65 buf[i] = task->thread.fp_state.fpr[i][TS_VSRLOWOFFSET]; in copy_vsx_to_user() 78 task->thread.fp_state.fpr[i][TS_VSRLOWOFFSET] = buf[i]; in copy_vsx_from_user() 119 buf[i] = task->thread.ckfp_state.fpr[i][TS_VSRLOWOFFSET]; in copy_ckvsx_to_user() 132 task->thread.ckfp_state.fpr[i][TS_VSRLOWOFFSET] = buf[i]; in copy_ckvsx_from_user()
|
/linux-6.6.21/arch/loongarch/include/asm/ |
D | processor.h | 68 static inline u##width get_fpr##width(union fpureg *fpr, unsigned idx) \ 70 return fpr->val##width[FPR_IDX(width, idx)]; \ 73 static inline void set_fpr##width(union fpureg *fpr, unsigned int idx, \ 76 fpr->val##width[FPR_IDX(width, idx)] = val; \ 86 union fpureg fpr[NUM_FPU_REGS]; member 183 .fpr = {{{0,},},}, \
|
/linux-6.6.21/arch/mips/loongson64/ |
D | cop2-ex.c | 98 set_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lswc2_format.rt], 0, value); in loongson_cu2_call() 99 set_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lswc2_format.rq], 0, value_next); in loongson_cu2_call() 131 value_next = get_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lswc2_format.rq], 0); in loongson_cu2_call() 137 value = get_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lswc2_format.rt], 0); in loongson_cu2_call() 203 set_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lsdc2_format.rt], 0, value); in loongson_cu2_call() 219 set_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lsdc2_format.rt], 0, value); in loongson_cu2_call() 283 value = get_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lsdc2_format.rt], 0); in loongson_cu2_call() 301 value = get_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lsdc2_format.rt], 0); in loongson_cu2_call()
|
/linux-6.6.21/arch/mips/include/asm/ |
D | processor.h | 103 static inline u##width get_fpr##width(union fpureg *fpr, unsigned idx) \ 105 return fpr->val##width[FPR_IDX(width, idx)]; \ 108 static inline void set_fpr##width(union fpureg *fpr, unsigned idx, \ 111 fpr->val##width[FPR_IDX(width, idx)] = val; \ 124 union fpureg fpr[NUM_FPU_REGS]; member 287 .fpr = {{{0,},},}, \
|
D | fpu.h | 213 memset(&target->thread.fpu.fpr, ~0, sizeof(target->thread.fpu.fpr)); in init_fp_ctx() 248 return tsk->thread.fpu.fpr; in get_fpu_regs()
|
/linux-6.6.21/arch/powerpc/kernel/ptrace/ |
D | ptrace-vsx.c | 109 buf[i] = target->thread.fp_state.fpr[i][TS_VSRLOWOFFSET]; in vsr_get() 139 buf[i] = target->thread.fp_state.fpr[i][TS_VSRLOWOFFSET]; in vsr_set() 145 target->thread.fp_state.fpr[i][TS_VSRLOWOFFSET] = buf[i]; in vsr_set()
|
D | ptrace32.c | 97 tmp = ((unsigned int *)child->thread.fp_state.fpr) in compat_arch_ptrace() 138 tmp = child->thread.fp_state.fpr[numReg - PT_FPR0][0]; in compat_arch_ptrace() 197 ((unsigned int *)child->thread.fp_state.fpr) in compat_arch_ptrace() 240 tmp = &child->thread.fp_state.fpr[numReg - PT_FPR0][0]; in compat_arch_ptrace()
|
D | ptrace-novsx.c | 26 offsetof(struct thread_fp_state, fpr[32])); in fpr_get() 55 offsetof(struct thread_fp_state, fpr[32])); in fpr_set()
|
D | ptrace-fpu.c | 23 *data = ((u32 *)child->thread.fp_state.fpr)[fpidx]; in ptrace_get_fpr() 49 ((u32 *)child->thread.fp_state.fpr)[fpidx] = data; in ptrace_put_fpr()
|
/linux-6.6.21/drivers/net/ethernet/freescale/ |
D | gianfar_ethtool.c | 607 u32 fcr = 0x0, fpr = FPR_FILER_MASK; in ethflow_to_filer_rules() local 612 priv->ftp_rqfpr[priv->cur_filer_idx] = fpr; in ethflow_to_filer_rules() 614 gfar_write_filer(priv, priv->cur_filer_idx, fcr, fpr); in ethflow_to_filer_rules() 619 priv->ftp_rqfpr[priv->cur_filer_idx] = fpr; in ethflow_to_filer_rules() 621 gfar_write_filer(priv, priv->cur_filer_idx, fcr, fpr); in ethflow_to_filer_rules() 628 gfar_write_filer(priv, priv->cur_filer_idx, fcr, fpr); in ethflow_to_filer_rules() 629 priv->ftp_rqfpr[priv->cur_filer_idx] = fpr; in ethflow_to_filer_rules() 637 priv->ftp_rqfpr[priv->cur_filer_idx] = fpr; in ethflow_to_filer_rules() 639 gfar_write_filer(priv, priv->cur_filer_idx, fcr, fpr); in ethflow_to_filer_rules() 646 priv->ftp_rqfpr[priv->cur_filer_idx] = fpr; in ethflow_to_filer_rules() [all …]
|
/linux-6.6.21/arch/mips/kvm/ |
D | mips.c | 683 v = get_fpr32(&fpu->fpr[idx], 0); in kvm_mips_get_reg() 685 v = get_fpr32(&fpu->fpr[idx & ~1], idx & 1); in kvm_mips_get_reg() 694 v = get_fpr64(&fpu->fpr[idx], 0); in kvm_mips_get_reg() 717 vs[0] = get_fpr64(&fpu->fpr[idx], 0); in kvm_mips_get_reg() 718 vs[1] = get_fpr64(&fpu->fpr[idx], 1); in kvm_mips_get_reg() 721 vs[0] = get_fpr64(&fpu->fpr[idx], 1); in kvm_mips_get_reg() 722 vs[1] = get_fpr64(&fpu->fpr[idx], 0); in kvm_mips_get_reg() 817 set_fpr32(&fpu->fpr[idx], 0, v); in kvm_mips_set_reg() 819 set_fpr32(&fpu->fpr[idx & ~1], idx & 1, v); in kvm_mips_set_reg() 828 set_fpr64(&fpu->fpr[idx], 0, v); in kvm_mips_set_reg() [all …]
|
/linux-6.6.21/arch/mips/math-emu/ |
D | cp1emu.c | 431 union fpureg *fpr; in isBranchInstr() local 706 fpr = ¤t->thread.fpu.fpr[insn.i_format.rt]; in isBranchInstr() 707 bit0 = get_fpr32(fpr, 0) & 0x1; in isBranchInstr() 801 (si) = (int)get_fpr32(&ctx->fpr[x], 0); \ 803 (si) = (int)get_fpr32(&ctx->fpr[(x) & ~1], (x) & 1); \ 810 set_fpr32(&ctx->fpr[x], 0, si); \ 811 for (i = 1; i < ARRAY_SIZE(ctx->fpr[x].val32); i++) \ 812 set_fpr32(&ctx->fpr[x], i, 0); \ 814 set_fpr32(&ctx->fpr[(x) & ~1], (x) & 1, si); \ 818 #define SIFROMHREG(si, x) ((si) = (int)get_fpr32(&ctx->fpr[x], 1)) [all …]
|