tf_srr0
if (ufetch_32((const void *)tf->tf_srr0, &insn) != 0)
iac2 = ((insn & 2) ? 0 : tf->tf_srr0) + off;
iac2 = ((insn & 2) ? 0 : tf->tf_srr0) + off;
mtspr(SPR_IAC1, tf->tf_srr0 + 4);
tf->tf_srr0);
panic("%s: srr0/srr1=%#lx/%#lx", __func__, tf->tf_srr0, tf->tf_srr1);
panic("%s: srr0/srr1=%#lx/%#lx", __func__, tf->tf_srr0, tf->tf_srr1);
panic("%s: srr0/srr1=%#lx/%#lx", __func__, tf->tf_srr0, tf->tf_srr1);
__func__, tf, mftb(), tf->tf_srr0, tf->tf_srr1,
curlwp->l_proc->p_comm, tf->tf_srr0, tf->tf_srr1, tf);
const vaddr_t faultva = trunc_page(tf->tf_srr0);
tf->tf_srr0, (uintptr_t)pg, pa, 0);
tf->tf_srr0, (uintptr_t)pg, pa, 0);
vm_signal(rv, EXC_ISI, tf->tf_srr0, ksi);
const vaddr_t faultva = tf->tf_srr0;
vm_signal(rv, EXC_ISI, tf->tf_srr0, ksi);
ksi->ksi_addr = (void *)tf->tf_srr0;
if (copyin((void *)tf->tf_srr0, &opcode, sizeof(opcode)) != 0)
tf->tf_srr0, tf->tf_srr1, tf->tf_esr,
*trap_pte_lookup(tf, trunc_page(tf->tf_srr0), PSL_IS));
vaddr_t va = (vaddr_t)tf->tf_srr0;
tf->tf_srr0 += (ksi->ksi_code == TRAP_TRACE) ? 0 : 4;
tf->tf_srr0 += 4;
ksi->ksi_addr = (void *)tf->tf_srr0;
ksi->ksi_addr = (void *)tf->tf_srr0;
ksi->ksi_addr = (void *)tf->tf_srr0;
ksi->ksi_addr = (void *)tf->tf_srr0;
ksi->ksi_addr = (void *)tf->tf_srr0;
tf, tf->tf_exc, tf->tf_srr0, tf->tf_srr1, tf->tf_esr, tf->tf_dear);
if (ddb_trapfunc <= tf->tf_srr0 && tf->tf_srr0 <= ddb_trapfunc+16) {
register_t srr0 = tf->tf_srr0;
if (srr0 == tf->tf_srr0)
tf->tf_srr0 += 4;
tf->tf_srr0 += 4;
tf->tf_srr0 = fb->fb_pc;
tf->tf_srr0, tf->tf_srr1, tf->tf_lr);
trap_code, tf, tf->tf_srr0, tf->tf_srr1);
trap_code, tf, tf->tf_srr0, tf->tf_srr1);
tf->tf_esr, tf->tf_srr0, tf->tf_srr1);
ksi->ksi_addr = (void *)tf->tf_srr0;
if (copyin((void *) (tf->tf_srr0), &insn.i_int, sizeof (insn.i_int))) {
insn.i_int, (void *)tf->tf_srr0));
tf->tf_srr0 += 4;
insn.i_int, (void *) (tf->tf_srr0));
opc_disasm((vaddr_t)(tf->tf_srr0), insn.i_int);
vaddr_t loc = tf->tf_srr0;
type, tf->tf_srr0, tf, &tf));
ksi.ksi_addr = (void *)tf->tf_srr0;
tf->tf_srr0,
tf->tf_srr0 = fb->fb_pc;
tf->tf_srr0, (ftype & VM_PROT_WRITE) ? "write" : "read",
tf->tf_srr0, tf));
rv = uvm_fault(&p->p_vmspace->vm_map, trunc_page(tf->tf_srr0),
ksi.ksi_addr = (void *)tf->tf_srr0;
ksi.ksi_addr = (void *)tf->tf_srr0;
va = (vaddr_t)tf->tf_srr0;
tf->tf_srr0 += (ksi.ksi_code == TRAP_TRACE) ?
rv = copyin((void *)tf->tf_srr0, &opcode,
tf->tf_srr0 += 4;
ksi.ksi_addr = (void *)tf->tf_srr0;
tf->tf_srr0 = fb->fb_pc;
printf("trap type 0x%x at 0x%lx\n", type, tf->tf_srr0);
void * const ras_pc = ras_lookup(p, (void *) tf->tf_srr0);
tf->tf_srr0 = (vaddr_t) ras_pc;
tf->tf_srr0 = sc.sc_frame.srr0;
utf->srr0 = tf->tf_srr0;
tf->tf_srr0 = (register_t)p->p_sigctx.ps_sigcode;
tf->tf_srr0 = (register_t)ps->sa_sigdesc[sig].sd_tramp;
tf->tf_srr0 = utf->srr0;
DDB_REGS->iar = tf->tf_srr0;
tf->tf_srr0 = DDB_REGS->iar;
tf->tf_srr0, tf->tf_srr1, tf->tf_dear, tf->tf_esr);
lr = (db_addr_t)R(&tf->tf_srr0);
opc_disasm((tf)->tf_srr0, (insn)->i_int); \
ret = ufetch_32((uint32_t *)tf->tf_srr0, (uint32_t *)&insn.i_int);
ret, tf->tf_srr0, tf->tf_dear);
ksi->ksi_addr = (void *)tf->tf_srr0;
tf->tf_srr0 += sizeof(insn);
tf->tf_srr0, tf->tf_dear,
rs, ra, tf->tf_srr0, (uint32_t)dear,
ret, tf->tf_srr0, (uint32_t)dear,
tf->tf_srr0, tf->tf_dear, (uint32_t)ea,
ret, rs, r, tf->tf_srr0, tf->tf_dear, (uint32_t)ea,
tf->tf_srr0 = func;
return l->l_md.md_utf->tf_srr0;
tf->tf_srr0 = (register_t)addr;
va[0] = (vaddr_t)tf->tf_srr0;
regs->pc = tf->tf_srr0;
tf->tf_srr0 = regs->pc;
tf->tf_srr0 = (register_t)handler;
gr[_REG_PC] = tf->tf_srr0;
tf->tf_srr0 = gr[_REG_PC];
tf->tf_srr0 -= 4;
if (copyin((void *)tf->tf_srr0, &opcode, sizeof(opcode)) != 0)
ras_lookup(p, (void *)tf->tf_srr0) == (void *) -1) {
if (copyin((void *)tf->tf_srr0, &instr.i_int, sizeof(instr)) != 0) {
ksi.ksi_addr = (void *)tf->tf_srr0;
printf("trap: copyin of 0x%08lx failed\n", tf->tf_srr0);
va, tf->tf_srr0, tf->tf_dsisr);
tf->tf_srr0 = fb->fb_pc;
va, tf->tf_srr0, tf->tf_dsisr, rv, tf->tf_lr);
tf->tf_dar, tf->tf_srr0, tf->tf_dsisr, rv);
tf->tf_srr0, tf->tf_srr1, tf->tf_lr);
pmap_ste_spill(vm_map_pmap(map), trunc_page(tf->tf_srr0),
pmap_pte_spill(vm_map_pmap(map), trunc_page(tf->tf_srr0),
rv = uvm_fault(map, trunc_page(tf->tf_srr0), ftype);
tf->tf_srr0, tf->tf_srr1);
ksi.ksi_addr = (void *)tf->tf_srr0;
tf->tf_dar, tf->tf_srr0, tf->tf_dsisr);
tf->tf_srr0 += 4;
tf->tf_srr0, tf->tf_srr1);
ksi.ksi_addr = (void *)tf->tf_srr0;
p->p_pid, p->p_comm, tf->tf_srr0, tf->tf_srr1);
ksi.ksi_addr = (void *)tf->tf_srr0;
ras_lookup(p, (void *)tf->tf_srr0) == (void *) -1) {
ksi.ksi_addr = (void *)tf->tf_srr0;
tf->tf_srr0 += 4;
ksi.ksi_addr = (void *)tf->tf_srr0;
tf->tf_srr0 += 4;
tf->tf_srr0 += 4;
p->p_comm, tf->tf_srr0, tf->tf_srr1);
tf->tf_srr0 = fb->fb_pc;
p->p_comm, tf->tf_srr0, tf->tf_srr1);
tf->tf_dar, tf->tf_srr0, tf->tf_dsisr);
p->p_comm, tf->tf_srr0, tf->tf_srr1);
printf("trap type %x at %lx\n", type, tf->tf_srr0);
linux_regs.lnip = tf->tf_srr0;
tf->tf_srr0 = (int)p->p_sigctx.ps_sigcode;
tf->tf_srr0 = lregs->lnip;
tf->tf_srr0 = lregs->lnip;