/* Native-dependent code for x86 BSD's.
- Copyright (C) 2011-2016 Free Software Foundation, Inc.
+ Copyright (C) 2011-2020 Free Software Foundation, Inc.
This file is part of GDB.
#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 */