aboutsummaryrefslogtreecommitdiff
path: root/sys/arm64/arm64/gdb_machdep.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arm64/arm64/gdb_machdep.c')
-rw-r--r--sys/arm64/arm64/gdb_machdep.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/arm64/arm64/gdb_machdep.c b/sys/arm64/arm64/gdb_machdep.c
index dc0a7eeba692..b27e1edb3d7f 100644
--- a/sys/arm64/arm64/gdb_machdep.c
+++ b/sys/arm64/arm64/gdb_machdep.c
@@ -41,6 +41,7 @@
#include <machine/pcb.h>
#include <gdb/gdb.h>
+#include <gdb/gdb_int.h>
void *
gdb_cpu_getreg(int regnum, size_t *regsz)
@@ -110,3 +111,14 @@ gdb_cpu_signal(int type, int code __unused)
}
return (SIGEMT);
}
+
+void
+gdb_cpu_stop_reason(int type, int code __unused)
+{
+
+ if (type == EXCP_WATCHPT_EL1) {
+ gdb_tx_str("watch:");
+ gdb_tx_varhex((uintmax_t)READ_SPECIALREG(far_el1));
+ gdb_tx_char(';');
+ }
+}