aboutsummaryrefslogtreecommitdiff
path: root/gdb/x86-bsd-nat.h
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/x86-bsd-nat.h')
-rw-r--r--gdb/x86-bsd-nat.h21
1 files changed, 17 insertions, 4 deletions
diff --git a/gdb/x86-bsd-nat.h b/gdb/x86-bsd-nat.h
index ced33ac..1aee5fb 100644
--- a/gdb/x86-bsd-nat.h
+++ b/gdb/x86-bsd-nat.h
@@ -20,12 +20,25 @@
#ifndef X86_BSD_NAT_H
#define X86_BSD_NAT_H
+#include "x86-nat.h"
+
/* Low level x86 XSAVE info. */
extern size_t x86bsd_xsave_len;
-/* Create a prototype *BSD/x86 target. The client can override it
- with local methods. */
-
-extern struct target_ops *x86bsd_target (void);
+/* A prototype *BSD/x86 target. */
+
+template<typename BaseTarget>
+class x86bsd_nat_target : public x86_nat_target<BaseTarget>
+{
+ using base_class = x86_nat_target<BaseTarget>;
+public:
+#ifdef HAVE_PT_GETDBREGS
+ void mourn_inferior () override
+ {
+ x86_cleanup_dregs ();
+ base_class::mourn_inferior ();
+ }
+#endif /* HAVE_PT_GETDBREGS */
+};
#endif /* x86-bsd-nat.h */