/* Target-dependent code for GNU/Linux i386.
- Copyright (C) 2000-2018 Free Software Foundation, Inc.
+ Copyright (C) 2000-2019 Free Software Foundation, Inc.
This file is part of GDB.
#include "xml-syscall.h"
#include "i387-tdep.h"
-#include "x86-xstate.h"
+#include "common/x86-xstate.h"
/* The syscall's XML filename for i386. */
#define XML_SYSCALL_FILENAME_I386 "syscalls/i386-linux.xml"
if (!i386_mpx_enabled ())
return;
- TRY
+ try
{
/* Sigcode evaluates if the actual segfault is a boundary violation. */
sig_code = parse_and_eval_long ("$_siginfo.si_code\n");
access
= parse_and_eval_long ("$_siginfo._sifields._sigfault.si_addr");
}
- CATCH (exception, RETURN_MASK_ALL)
+ catch (const gdb_exception &exception)
{
return;
}
- END_CATCH
/* If this is not a boundary violation just return. */
if (sig_code != SIG_CODE_BONDARY_FAULT)
[(xcr0 & X86_XSTATE_PKRU) ? 1 : 0];
if (*tdesc == NULL)
- *tdesc = i386_create_target_description (xcr0, true);
+ *tdesc = i386_create_target_description (xcr0, true, false);
return *tdesc;
}
{
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
- cb (".reg", 68, &i386_gregset, NULL, cb_data);
+ cb (".reg", 68, 68, &i386_gregset, NULL, cb_data);
if (tdep->xcr0 & X86_XSTATE_AVX)
cb (".reg-xstate", X86_XSTATE_SIZE (tdep->xcr0),
- &i386_linux_xstateregset, "XSAVE extended state", cb_data);
+ X86_XSTATE_SIZE (tdep->xcr0), &i386_linux_xstateregset,
+ "XSAVE extended state", cb_data);
else if (tdep->xcr0 & X86_XSTATE_SSE)
- cb (".reg-xfp", 512, &i386_fpregset, "extended floating-point",
+ cb (".reg-xfp", 512, 512, &i386_fpregset, "extended floating-point",
cb_data);
else
- cb (".reg2", 108, &i386_fpregset, NULL, cb_data);
+ cb (".reg2", 108, 108, &i386_fpregset, NULL, cb_data);
}
/* Linux kernel shows PC value after the 'int $0x80' instruction even if