Changeset View
Changeset View
Standalone View
Standalone View
sys/arm64/arm64/gdb_machdep.c
Show First 20 Lines • Show All 104 Lines • ▼ Show 20 Lines | |||||
int | int | ||||
gdb_cpu_signal(int type, int code __unused) | gdb_cpu_signal(int type, int code __unused) | ||||
{ | { | ||||
switch (type) { | switch (type) { | ||||
case EXCP_WATCHPT_EL1: | case EXCP_WATCHPT_EL1: | ||||
case EXCP_SOFTSTP_EL1: | case EXCP_SOFTSTP_EL1: | ||||
case EXCP_BRKPT_EL1: | |||||
case EXCP_BRK: | case EXCP_BRK: | ||||
return (SIGTRAP); | return (SIGTRAP); | ||||
} | } | ||||
return (SIGEMT); | return (SIGEMT); | ||||
} | } | ||||
void | void | ||||
gdb_cpu_stop_reason(int type, int code __unused) | gdb_cpu_stop_reason(int type, int code __unused) | ||||
{ | { | ||||
if (type == EXCP_WATCHPT_EL1) { | if (type == EXCP_WATCHPT_EL1) { | ||||
gdb_tx_str("watch:"); | gdb_tx_str("watch:"); | ||||
gdb_tx_varhex((uintmax_t)READ_SPECIALREG(far_el1)); | gdb_tx_varhex((uintmax_t)READ_SPECIALREG(far_el1)); | ||||
gdb_tx_char(';'); | gdb_tx_char(';'); | ||||
} | } | ||||
} | } |