Changeset View
Changeset View
Standalone View
Standalone View
head/sys/mips/mips/trap.c
Show First 20 Lines • Show All 818 Lines • ▼ Show 20 Lines | #endif | ||||
case T_BREAK + T_USER: | case T_BREAK + T_USER: | ||||
{ | { | ||||
intptr_t va; | intptr_t va; | ||||
uint32_t instr; | uint32_t instr; | ||||
i = SIGTRAP; | i = SIGTRAP; | ||||
ucode = TRAP_BRKPT; | ucode = TRAP_BRKPT; | ||||
addr = trapframe->pc; | |||||
/* compute address of break instruction */ | /* compute address of break instruction */ | ||||
va = trapframe->pc; | va = trapframe->pc; | ||||
if (DELAYBRANCH(trapframe->cause)) | if (DELAYBRANCH(trapframe->cause)) | ||||
va += sizeof(int); | va += sizeof(int); | ||||
addr = va; | |||||
if (td->td_md.md_ss_addr != va) | if (td->td_md.md_ss_addr != va) | ||||
break; | break; | ||||
/* read break instruction */ | /* read break instruction */ | ||||
instr = fuword32((caddr_t)va); | instr = fuword32((caddr_t)va); | ||||
if (instr != MIPS_BREAK_SSTEP) | if (instr != MIPS_BREAK_SSTEP) | ||||
▲ Show 20 Lines • Show All 864 Lines • Show Last 20 Lines |