/* Target-dependent code for GNU/Linux x86-64.
- Copyright (C) 2001-2016 Free Software Foundation, Inc.
+ Copyright (C) 2001-2017 Free Software Foundation, Inc.
Contributed by Jiri Smid, SuSE Labs.
This file is part of GDB.
#include "features/i386/amd64-linux.c"
#include "features/i386/amd64-avx-linux.c"
#include "features/i386/amd64-mpx-linux.c"
+#include "features/i386/amd64-avx-mpx-linux.c"
#include "features/i386/amd64-avx512-linux.c"
#include "features/i386/x32-linux.c"
return tdesc_x32_avx_linux; /* No x32 MPX falling back to AVX. */
else
return tdesc_amd64_mpx_linux;
+ case X86_XSTATE_AVX_MPX_MASK:
+ if (gdbarch_ptr_bit (gdbarch) == 32)
+ return tdesc_x32_avx_linux; /* No x32 MPX falling back to AVX. */
+ else
+ return tdesc_amd64_avx_mpx_linux;
case X86_XSTATE_AVX_MASK:
if (gdbarch_ptr_bit (gdbarch) == 32)
return tdesc_x32_avx_linux;
struct parser_state *pstate,
int narg)
{
- enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
- struct frame_info *this_frame = get_selected_frame (NULL);
struct stoken str;
/* DTrace probe arguments can be found on the ABI-defined places for
else
{
/* Additional arguments are passed on the stack. */
- CORE_ADDR sp;
const char *regname = user_reg_map_regnum_to_name (gdbarch, AMD64_RSP_REGNUM);
/* Displacement. */
set_gdbarch_process_record (gdbarch, i386_process_record);
set_gdbarch_process_record_signal (gdbarch, amd64_linux_record_signal);
+
+ set_gdbarch_get_siginfo_type (gdbarch, x86_linux_get_siginfo_type);
+ set_gdbarch_handle_segmentation_fault (gdbarch,
+ i386_linux_handle_segmentation_fault);
}
static void
initialize_tdesc_amd64_linux ();
initialize_tdesc_amd64_avx_linux ();
initialize_tdesc_amd64_mpx_linux ();
+ initialize_tdesc_amd64_avx_mpx_linux ();
initialize_tdesc_amd64_avx512_linux ();
initialize_tdesc_x32_linux ();