/* Native-dependent code for FreeBSD/i386.
- Copyright (C) 2001-2019 Free Software Foundation, Inc.
+ Copyright (C) 2001-2021 Free Software Foundation, Inc.
This file is part of GDB.
#include "fbsd-nat.h"
#include "i386-tdep.h"
#include "x86-nat.h"
-#include "x86-xstate.h"
+#include "gdbsupport/x86-xstate.h"
#include "x86-bsd-nat.h"
#include "i386-bsd-nat.h"
ULONGEST eflags;
/* Workaround for a bug in FreeBSD. Make sure that the trace
- flag is off when doing a continue. There is a code path
- through the kernel which leaves the flag set when it should
- have been cleared. If a process has a signal pending (such
- as SIGALRM) and we do a PT_STEP, the process never really has
- a chance to run because the kernel needs to notify the
- debugger that a signal is being sent. Therefore, the process
- never goes through the kernel's trap() function which would
- normally clear it. */
+ flag is off when doing a continue. There is a code path
+ through the kernel which leaves the flag set when it should
+ have been cleared. If a process has a signal pending (such
+ as SIGALRM) and we do a PT_STEP, the process never really has
+ a chance to run because the kernel needs to notify the
+ debugger that a signal is being sent. Therefore, the process
+ never goes through the kernel's trap() function which would
+ normally clear it. */
regcache_cooked_read_unsigned (regcache, I386_EFLAGS_REGNUM,
&eflags);
if (x86bsd_xsave_len == 0)
xcr0 = X86_XSTATE_SSE_MASK;
- return i386_target_description (xcr0);
+ return i386_target_description (xcr0, true);
}
#endif
}
#endif
+void _initialize_i386fbsd_nat ();
void
-_initialize_i386fbsd_nat (void)
+_initialize_i386fbsd_nat ()
{
add_inf_child_target (&the_i386_fbsd_nat_target);