| /netbsd-src/sys/arch/sparc64/sparc64/ |
| H A D | core_machdep.c | 95 md_core.md_tf.tf_tstate = l->l_md.md_tf->tf_tstate; in cpu_coredump() 96 md_core.md_tf.tf_pc = l->l_md.md_tf->tf_pc; in cpu_coredump() 97 md_core.md_tf.tf_npc = l->l_md.md_tf->tf_npc; in cpu_coredump() 98 md_core.md_tf.tf_y = l->l_md.md_tf->tf_y; in cpu_coredump() 99 md_core.md_tf.tf_tt = l->l_md.md_tf->tf_tt; in cpu_coredump() 100 md_core.md_tf.tf_pil = l->l_md.md_tf->tf_pil; in cpu_coredump() 101 md_core.md_tf.tf_oldpil = l->l_md.md_tf->tf_oldpil; in cpu_coredump() 103 md_core.md_tf.tf_global[0] = l->l_md.md_tf->tf_global[0]; in cpu_coredump() 104 md_core.md_tf.tf_global[1] = l->l_md.md_tf->tf_global[1]; in cpu_coredump() 105 md_core.md_tf.tf_global[2] = l->l_md.md_tf->tf_global[2]; in cpu_coredump() [all …]
|
| H A D | netbsd32_machdep.c | 106 struct trapframe64 *tf = l->l_md.md_tf; in netbsd32_setregs() 133 if ((fs = l->l_md.md_fpstate) != NULL) { in netbsd32_setregs() 141 l->l_md.md_fpstate = NULL; in netbsd32_setregs() 171 struct trapframe64 *tf = l->l_md.md_tf; in netbsd32_sendsig_siginfo() 265 struct trapframe64* tf = l->l_md.md_tf; in netbsd32_process_read_regs() 289 struct trapframe64* tf = l->l_md.md_tf; in netbsd32_process_write_regs() 312 if (l->l_md.md_fpstate) in netbsd32_process_read_fpregs() 313 statep = l->l_md.md_fpstate; in netbsd32_process_read_fpregs() 328 statep = l->l_md.md_fpstate; in netbsd32_process_write_fpregs() 360 md_core.md_tf.tf_psr = TSTATECCR_TO_PSR(l->l_md.md_tf->tf_tstate); in cpu_coredump32() [all …]
|
| H A D | vm_machdep.c | 224 if (l1->l_md.md_fpstate) { in cpu_lwp_fork() 226 l2->l_md.md_fpstate = pool_cache_get(fpstate_cache, PR_WAITOK); in cpu_lwp_fork() 227 memcpy(l2->l_md.md_fpstate, l1->l_md.md_fpstate, in cpu_lwp_fork() 230 l2->l_md.md_fpstate = NULL; in cpu_lwp_fork() 237 tf2 = l2->l_md.md_tf = (struct trapframe *) in cpu_lwp_fork() 287 savefpstate(l->l_md.md_fpstate); in fpusave_cpu() 343 if (l->l_md.md_fpstate != NULL) in cpu_lwp_free() 352 if ((fs = l->l_md.md_fpstate) != NULL) in cpu_lwp_free2() 359 struct trapframe *tf = l->l_md.md_tf; in cpu_lwp_setprivate()
|
| H A D | process_machdep.c | 115 struct trapframe64* tf = l->l_md.md_tf; in process_read_regs() 149 struct trapframe64* tf = l->l_md.md_tf; in process_write_regs() 196 l->l_md.md_tf->tf_pc = (vaddr_t)addr; in process_set_pc() 197 l->l_md.md_tf->tf_npc = (vaddr_t)addr + 4; in process_set_pc() 208 if ((fs = l->l_md.md_fpstate) == NULL) in process_read_fpregs() 233 if ((fs = l->l_md.md_fpstate) == NULL) { in process_write_fpregs() 236 l->l_md.md_fpstate = fs; in process_write_fpregs()
|
| /netbsd-src/sys/arch/aarch64/aarch64/ |
| H A D | exec_machdep.c | 116 cprng_strong(kern_cprng, l->l_md.md_ia_user, in aarch64_setregs_ptrauth() 117 sizeof(l->l_md.md_ia_user), 0); in aarch64_setregs_ptrauth() 118 cprng_strong(kern_cprng, l->l_md.md_ib_user, in aarch64_setregs_ptrauth() 119 sizeof(l->l_md.md_ib_user), 0); in aarch64_setregs_ptrauth() 120 cprng_strong(kern_cprng, l->l_md.md_da_user, in aarch64_setregs_ptrauth() 121 sizeof(l->l_md.md_da_user), 0); in aarch64_setregs_ptrauth() 122 cprng_strong(kern_cprng, l->l_md.md_db_user, in aarch64_setregs_ptrauth() 123 sizeof(l->l_md.md_db_user), 0); in aarch64_setregs_ptrauth() 124 cprng_strong(kern_cprng, l->l_md.md_ga_user, in aarch64_setregs_ptrauth() 125 sizeof(l->l_md.md_ga_user), 0); in aarch64_setregs_ptrauth() [all …]
|
| H A D | vm_machdep.c | 98 l2->l_md.md_cpacr = CPACR_FPEN_NONE; in cpu_lwp_fork() 99 KASSERT(l2->l_md.md_astpending == 0); in cpu_lwp_fork() 110 l2->l_md.md_ia_kern[0] = (uintptr_t)l2; in cpu_lwp_fork() 111 l2->l_md.md_ia_kern[1] = (uintptr_t)stack; in cpu_lwp_fork() 114 memcpy(l2->l_md.md_ia_user, l1->l_md.md_ia_user, in cpu_lwp_fork() 115 sizeof(l2->l_md.md_ia_user)); in cpu_lwp_fork() 116 memcpy(l2->l_md.md_ib_user, l1->l_md.md_ib_user, in cpu_lwp_fork() 117 sizeof(l2->l_md.md_ib_user)); in cpu_lwp_fork() 118 memcpy(l2->l_md.md_da_user, l1->l_md.md_da_user, in cpu_lwp_fork() 119 sizeof(l2->l_md.md_da_user)); in cpu_lwp_fork() [all …]
|
| /netbsd-src/sys/arch/sparc/sparc/ |
| H A D | vm_machdep.c | 218 if (l1->l_md.md_fpstate != NULL) { in cpu_lwp_fork() 222 l2->l_md.md_fpstate = in cpu_lwp_fork() 226 if ((cpi = l1->l_md.md_fpu) != NULL) { in cpu_lwp_fork() 231 savefpstate(l1->l_md.md_fpstate); in cpu_lwp_fork() 234 XCALL1(ipi_savefpstate, l1->l_md.md_fpstate, in cpu_lwp_fork() 238 memcpy(l2->l_md.md_fpstate, l1->l_md.md_fpstate, in cpu_lwp_fork() 242 l2->l_md.md_fpstate = NULL; in cpu_lwp_fork() 244 l2->l_md.md_fpu = NULL; in cpu_lwp_fork() 251 tf2 = l2->l_md.md_tf = (struct trapframe *) in cpu_lwp_fork() 297 if ((fs = l->l_md.md_fpstate) != NULL) { in cpu_lwp_free() [all …]
|
| H A D | process_machdep.c | 118 memcpy(regs, l->l_md.md_tf, sizeof(*regs)); in process_read_regs() 125 int psr = l->l_md.md_tf->tf_psr & ~PSR_ICC; in process_write_regs() 130 memcpy(l->l_md.md_tf, regs, sizeof(*regs)); in process_write_regs() 131 l->l_md.md_tf->tf_psr = psr | (regs->r_psr & PSR_ICC); in process_write_regs() 151 l->l_md.md_tf->tf_pc = (u_int)addr; in process_set_pc() 152 l->l_md.md_tf->tf_npc = (u_int)addr + 4; in process_set_pc() 161 if ((fs = l->l_md.md_fpstate) == NULL) in process_read_fpregs() 173 if ((fs = l->l_md.md_fpstate) == NULL) { in process_write_fpregs() 175 l->l_md.md_fpstate = fs; in process_write_fpregs()
|
| H A D | trap.c | 312 l->l_md.md_tf = tf; /* for ptrace/signals */ in trap() 319 savefpstate(l->l_md.md_fpstate); in trap() 320 l->l_md.md_fpu = NULL; in trap() 396 struct fpstate *fs = l->l_md.md_fpstate; in trap() 410 l->l_md.md_fpstate = fs; in trap() 453 savefpstate(cpuinfo.fplwp->l_md.md_fpstate); in trap() 454 cpuinfo.fplwp->l_md.md_fpu = NULL; in trap() 462 if ((cpi = l->l_md.md_fpu) != NULL) { in trap() 475 l->l_md.md_fpu = curcpu(); in trap() 582 savefpstate(l->l_md.md_fpstate); in trap() [all …]
|
| H A D | core_machdep.c | 94 md_core.md_tf = *l->l_md.md_tf; in cpu_coredump() 95 if (l->l_md.md_fpstate) { in cpu_coredump() 97 savefpstate(l->l_md.md_fpstate); in cpu_coredump() 98 md_core.md_fpstate = *l->l_md.md_fpstate; in cpu_coredump()
|
| /netbsd-src/sys/arch/ia64/ia64/ |
| H A D | vm_machdep.c | 175 l2->l_md.md_flags = l1->l_md.md_flags; in cpu_lwp_fork() 176 l2->l_md.md_tf = (struct trapframe *)(ua2 + UAREA_TF_OFFSET); in cpu_lwp_fork() 177 l2->l_md.user_stack = NULL; in cpu_lwp_fork() 178 l2->l_md.user_stack_size = 0; in cpu_lwp_fork() 179 KASSERT(l2->l_md.md_astpending == 0); in cpu_lwp_fork() 184 tf = l2->l_md.md_tf; in cpu_lwp_fork() 185 *tf = *l1->l_md.md_tf; in cpu_lwp_fork() 196 l2->l_md.user_stack = stack; in cpu_lwp_fork() 197 l2->l_md.user_stack_size = stacksize; in cpu_lwp_fork()
|
| /netbsd-src/sys/arch/hppa/hppa/ |
| H A D | vm_machdep.c | 59 struct trapframe *tf = l->l_md.md_regs; in cpu_activate_pcb() 99 KASSERT(l2->l_md.md_astpending == 0); in cpu_lwp_fork() 100 KASSERT(l2->l_md.md_flags == 0); in cpu_lwp_fork() 118 l2->l_md.md_bpva = l1->l_md.md_bpva; in cpu_lwp_fork() 119 l2->l_md.md_bpsave[0] = l1->l_md.md_bpsave[0]; in cpu_lwp_fork() 120 l2->l_md.md_bpsave[1] = l1->l_md.md_bpsave[1]; in cpu_lwp_fork() 124 tf = l2->l_md.md_regs = (struct trapframe *)sp; in cpu_lwp_fork() 128 memcpy(tf, l1->l_md.md_regs, sizeof(*tf)); in cpu_lwp_fork() 269 l->l_md.md_regs->tf_cr27 = (u_int)addr; in cpu_lwp_setprivate()
|
| H A D | trap.c | 205 l->l_md.md_astpending = 0; in userret() 208 } while (l->l_md.md_astpending); in userret() 645 l->l_md.md_regs = frame; in trap() 1116 userret(l, l->l_md.md_regs); in trap() 1122 curlwp->l_md.md_regs, curlwp); in trap() 1133 userret(l, l->l_md.md_regs); in md_child_return() 1135 frame_sanity_check(__func__, __LINE__, 0, l->l_md.md_regs, l); in md_child_return() 1146 userret(l, l->l_md.md_regs); in cpu_spawn_return() 1148 frame_sanity_check(__func__, __LINE__, 0, l->l_md.md_regs, l); in cpu_spawn_return() 1196 if (l->l_md.md_bpva != 0) { in ss_clear_breakpoints() [all …]
|
| /netbsd-src/sys/arch/alpha/alpha/ |
| H A D | vm_machdep.c | 103 l2->l_md.md_tf = l1->l_md.md_tf; in cpu_lwp_fork() 104 l2->l_md.md_flags = l1->l_md.md_flags & MDLWP_FP_C; in cpu_lwp_fork() 105 KASSERT(l2->l_md.md_astpending == 0); in cpu_lwp_fork() 111 l2->l_md.md_pcbpaddr = (void *)vtophys((vaddr_t)pcb2); in cpu_lwp_fork() 155 l2tf = l2->l_md.md_tf = (struct trapframe *) in cpu_lwp_fork() 157 memcpy(l2->l_md.md_tf, l1->l_md.md_tf, in cpu_lwp_fork() 180 (uint64_t)l2->l_md.md_tf; in cpu_lwp_fork()
|
| H A D | fp_complete.c | 108 #define PREFILTER_SUBNORMAL(l,v) if ((l)->l_md.md_flags & IEEE_MAP_DMZ \ 112 #define POSTFILTER_SUBNORMAL(l,v) if ((l)->l_md.md_flags & IEEE_MAP_UMZ \ 311 l->l_md.md_flags &= ~NETBSD_FLAG_TO_FP_C(FP_X_IMP); in cvt_gd() 407 alpha_write_fpcr(fp_c_to_fpcr_1(alpha_read_fpcr(), l->l_md.md_flags)); in fp_c_to_fpcr() 416 md_flags = l->l_md.md_flags; in alpha_write_fp_c() 419 l->l_md.md_flags = (md_flags & ~MDLWP_FP_C) | fp_c; in alpha_write_fp_c() 429 fp_c_to_fpcr_1(pcb->pcb_fp.fpr_cr, l->l_md.md_flags); in alpha_write_fp_c() 443 return l->l_md.md_flags & MDLWP_FP_C; in alpha_read_fp_c() 640 if ((curlwp->l_md.md_flags & MDLWP_FPACTIVE) == 0) { in alpha_fp_complete_at() 662 orig_flags = FP_C_TO_NETBSD_FLAG(l->l_md.md_flags); in alpha_fp_complete_at() [all …]
|
| /netbsd-src/sys/arch/sh3/sh3/ |
| H A D | vm_machdep.c | 148 l2->l_md.md_flags = l1->l_md.md_flags; in cpu_lwp_fork() 149 KASSERT(l2->l_md.md_astpending == 0); in cpu_lwp_fork() 152 memcpy(l2->l_md.md_regs, l1->l_md.md_regs, sizeof(struct trapframe)); in cpu_lwp_fork() 154 l2->l_md.md_regs->tf_r15 = (u_int)stack + stacksize; in cpu_lwp_fork() 186 l->l_md.md_pcb = pcb; in sh3_setup_uarea() 191 l->l_md.md_regs = tf; in sh3_setup_uarea() 243 struct trapframe *tf = l->l_md.md_regs; in md_child_return()
|
| H A D | sh3_machdep.c | 249 lwp0.l_md.md_pcb = curpcb; in sh_proc0_init() 265 lwp0.l_md.md_regs = (struct trapframe *)sf->sf_r6_bank - 1; in sh_proc0_init() 345 return ((void *)l->l_md.md_regs->tf_r15); in getframe() 354 struct trapframe *tf = l->l_md.md_regs; in sendsig_siginfo() 400 const struct trapframe *tf = l->l_md.md_regs; in cpu_getmcontext() 441 struct trapframe *tf = l->l_md.md_regs; in cpu_mcontext_validate() 453 struct trapframe *tf = l->l_md.md_regs; in cpu_setmcontext() 518 l->l_md.md_flags &= ~(MDL_USEDFPU | MDL_SSTEP); in setregs() 520 tf = l->l_md.md_regs; in setregs() 569 l->l_md.md_regs->tf_gbr = (int)addr; in cpu_lwp_setprivate()
|
| H A D | exception.c | 166 KDASSERT(l->l_md.md_regs == tf); /* check exception depth */ in general_exception() 188 l->l_md.md_flags &= ~MDL_SSTEP; in general_exception() 300 KDASSERT(l->l_md.md_regs == tf); in tlb_exception() 305 l->l_md.md_regs != tf); /* other */ in tlb_exception() 477 if (__predict_true(l->l_md.md_astpending == 0)) { in ast() 486 KDASSERT(l->l_md.md_regs == tf); in ast() 494 } while (__predict_false(l->l_md.md_astpending)); in ast()
|
| /netbsd-src/sys/arch/powerpc/oea/ |
| H A D | altivec.c | 107 l->l_md.md_utf->tf_vrsave = pcb->pcb_vr.vrsave; in vec_state_load() 112 l->l_md.md_flags |= PSL_VEC; in vec_state_load() 113 l->l_md.md_utf->tf_srr1 |= PSL_VEC; in vec_state_load() 136 pcb->pcb_vr.vrsave = l->l_md.md_utf->tf_vrsave; in vec_state_save() 155 l->l_md.md_utf->tf_srr1 &= ~PSL_VEC; in vec_state_release() 156 l->l_md.md_flags &= ~PSL_VEC; in vec_state_release() 178 l->l_md.md_utf->tf_vrsave = pcb->pcb_vr.vrsave; in vec_restore_from_mcontext() 201 mcp->__vrf.__vrsave = l->l_md.md_utf->tf_vrsave; in vec_save_to_mcontext()
|
| /netbsd-src/sys/arch/m68k/m68k/ |
| H A D | sunos_syscall.c | 143 l->l_md.md_flags |= MDL_STACKADJ; in sunos_syscall_plain() 145 l->l_md.md_flags &= ~MDL_STACKADJ; in sunos_syscall_plain() 208 if (l->l_md.md_flags & MDL_STACKADJ) { in sunos_syscall_plain() 209 l->l_md.md_flags &= ~MDL_STACKADJ; in sunos_syscall_plain() 252 l->l_md.md_flags |= MDL_STACKADJ; in sunos_syscall_fancy() 254 l->l_md.md_flags &= ~MDL_STACKADJ; in sunos_syscall_fancy() 320 if (l->l_md.md_flags & MDL_STACKADJ) { in sunos_syscall_fancy() 321 l->l_md.md_flags &= ~MDL_STACKADJ; in sunos_syscall_fancy()
|
| /netbsd-src/sys/arch/mips/mips/ |
| H A D | vm_machdep.c | 96 KASSERT(l2->l_md.md_ss_addr == 0); in cpu_lwp_fork() 97 KASSERT(l2->l_md.md_ss_instr == 0); in cpu_lwp_fork() 98 KASSERT(l2->l_md.md_astpending == 0); in cpu_lwp_fork() 109 *tf = *l1->l_md.md_utf; in cpu_lwp_fork() 115 l2->l_md.md_utf = tf; in cpu_lwp_fork() 117 CTASSERT(__arraycount(l2->l_md.md_upte) >= UPAGES); in cpu_lwp_fork() 118 for (u_int i = 0; i < __arraycount(l2->l_md.md_upte); i++) { in cpu_lwp_fork() 119 l2->l_md.md_upte[i] = 0; in cpu_lwp_fork() 130 l2->l_md.md_upte[i] = pte[i] & ~x; in cpu_lwp_fork() 278 return l->l_md.md_utf->tf_regs[_R_PC]; in cpu_lwp_pc()
|
| H A D | trap.c | 149 struct trapframe *utf = l->l_md.md_utf; in md_child_return() 175 struct trapframe * const utf = l->l_md.md_utf; in trap() 600 if (l->l_md.md_ss_addr != va || instr != MIPS_BREAK_SSTEP) { in trap() 639 rv = mips_ustore32_isync((void *)va, l->l_md.md_ss_instr); in trap() 648 l->l_md.md_ss_instr); in trap() 659 l->l_md.md_ss_addr, l->l_md.md_ss_instr); in trap() 660 l->l_md.md_ss_addr = 0; in trap() 758 while ((astpending = l->l_md.md_astpending) != 0) { in ast() 760 l->l_md.md_astpending = 0; in ast() 797 struct trapframe * const tf = l->l_md.md_utf; in mips_singlestep() [all …]
|
| /netbsd-src/sys/arch/riscv/riscv/ |
| H A D | vm_machdep.c | 82 KASSERT(l2->l_md.md_astpending == 0); in cpu_lwp_fork() 94 *tf = *l1->l_md.md_utf; in cpu_lwp_fork() 104 l2->l_md.md_utf = tf; in cpu_lwp_fork() 120 l2->l_md.md_ktf = tf; /* SP */ in cpu_lwp_fork() 122 KASSERT(l2->l_md.md_astpending == 0); in cpu_lwp_fork() 199 return l->l_md.md_utf->tf_pc; in cpu_lwp_pc()
|
| /netbsd-src/sys/arch/riscv/include/ |
| H A D | locore.h | 129 curlwp->l_md.md_onfault = NULL; 135 struct faultbuf * const fb = curlwp->l_md.md_onfault; in cpu_unset_onfault() 136 curlwp->l_md.md_onfault = NULL; in cpu_unset_onfault() 143 curlwp->l_md.md_onfault = fb; in cpu_disable_onfault()
|
| /netbsd-src/sys/arch/arm/arm/ |
| H A D | arm_machdep.c | 193 l->l_md.md_flags = 0; in setregs() 196 l->l_md.md_flags |= MDLWP_NOALIGNFLT; in setregs() 245 l->l_md.md_astpending |= __BIT(1); in cpu_need_resched() 257 l->l_md.md_astpending |= __BIT(0); in cpu_need_resched() 277 l->l_md.md_astpending |= __BIT(0); in cpu_signotify()
|