aboutsummaryrefslogtreecommitdiff
path: root/gdb/amd64fbsd-nat.c
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2012-02-09 16:06:44 +0000
committerPedro Alves <palves@redhat.com>2012-02-09 16:06:44 +0000
commit1916efaf84a102ab118cda679ab9bf1ba032c993 (patch)
tree34cbd10b2388cf394e04484fa7ee63217d7e050d /gdb/amd64fbsd-nat.c
parentf4859d94a05ee84d491fcc2bdb221da6670dbe52 (diff)
downloadgdb-1916efaf84a102ab118cda679ab9bf1ba032c993.zip
gdb-1916efaf84a102ab118cda679ab9bf1ba032c993.tar.gz
gdb-1916efaf84a102ab118cda679ab9bf1ba032c993.tar.bz2
2012-02-09 Valery Khromov <valery.khromov@gmail.com>
PR gdb/12953 * Makefile.in (HFILES_NO_SRCDIR): Add amd64bsd-nat.h. * amd64bsd-nat.c: Add support for debug registers (adapted from i386bsd-nat.c). [HAVE_PT_GETDBREGS] (amd64bsd_dr_get, amd64bsd_dr_set) (amd64bsd_dr_set_control, amd64bsd_dr_set_addr) (amd64bsd_dr_get_addr, amd64bsd_dr_get_status) (amd64bsd_dr_get_control): New functions. * amd64bsd-nat.h: New file (adapted from i386bsd-nat.h). * amd64fbsd-nat.c: Include "amd64bsd-nat.h", "i386-nat.h". [HAVE_PT_GETDBREGS] (_initialize_amd64fbsd_nat): Add hardware watchpoints initialization. * config/i386/fbsd64.mh (NATDEPFILES): Add i386-nat.o.
Diffstat (limited to 'gdb/amd64fbsd-nat.c')
-rw-r--r--gdb/amd64fbsd-nat.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/gdb/amd64fbsd-nat.c b/gdb/amd64fbsd-nat.c
index 79c5295..ab2431c 100644
--- a/gdb/amd64fbsd-nat.c
+++ b/gdb/amd64fbsd-nat.c
@@ -33,6 +33,8 @@
#include "fbsd-nat.h"
#include "amd64-tdep.h"
#include "amd64-nat.h"
+#include "amd64bsd-nat.h"
+#include "i386-nat.h"
/* Offset in `struct reg' where MEMBER is stored. */
@@ -154,6 +156,20 @@ _initialize_amd64fbsd_nat (void)
/* Add some extra features to the common *BSD/i386 target. */
t = amd64bsd_target ();
+
+#ifdef HAVE_PT_GETDBREGS
+
+ i386_use_watchpoints (t);
+
+ i386_dr_low.set_control = amd64bsd_dr_set_control;
+ i386_dr_low.set_addr = amd64bsd_dr_set_addr;
+ i386_dr_low.get_addr = amd64bsd_dr_get_addr;
+ i386_dr_low.get_status = amd64bsd_dr_get_status;
+ i386_dr_low.get_control = amd64bsd_dr_get_control;
+ i386_set_debug_register_length (8);
+
+#endif /* HAVE_PT_GETDBREGS */
+
t->to_pid_to_exec_file = fbsd_pid_to_exec_file;
t->to_find_memory_regions = fbsd_find_memory_regions;
t->to_make_corefile_notes = fbsd_make_corefile_notes;