aboutsummaryrefslogtreecommitdiff
path: root/gdb/i386-linux-tdep.c
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2020-07-21 17:28:16 -0700
committerJohn Baldwin <jhb@FreeBSD.org>2020-07-21 17:28:16 -0700
commit77bdfeb2e6041b1d228c3ba84233650993d435de (patch)
treed3a6f4b6a005ac1634c6dc65f50840b844c694f4 /gdb/i386-linux-tdep.c
parentad97bfc5332dddb57e0475459f0dfeed5ed8ccfd (diff)
downloadgdb-77bdfeb2e6041b1d228c3ba84233650993d435de.zip
gdb-77bdfeb2e6041b1d228c3ba84233650993d435de.tar.gz
gdb-77bdfeb2e6041b1d228c3ba84233650993d435de.tar.bz2
Migrate the x86 MPX handle_segmentation_fault hook to report_signal_info.
gdb/ChangeLog: * amd64-linux-tdep.c (amd64_linux_init_abi_common): Use i386_linux_report_signal_info instead of i386_linux_handle_segmentation_fault. * i386-linux-tdep.c (i386_linux_handle_segmentation_fault): Rename to i386_linux_report_signal_info and add siggnal argument. (i386_linux_init_abi): Use i386_linux_report_signal_info instead of i386_linux_handle_segmentation_fault. * i386-linux-tdep.h (i386_linux_handle_segmentation_fault): Rename to i386_linux_report_signal_info and add siggnal argument.
Diffstat (limited to 'gdb/i386-linux-tdep.c')
-rw-r--r--gdb/i386-linux-tdep.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/gdb/i386-linux-tdep.c b/gdb/i386-linux-tdep.c
index c576b31..7270931 100644
--- a/gdb/i386-linux-tdep.c
+++ b/gdb/i386-linux-tdep.c
@@ -388,19 +388,19 @@ i386_canonicalize_syscall (int syscall)
#define SIG_CODE_BONDARY_FAULT 3
-/* i386 GNU/Linux implementation of the handle_segmentation_fault
+/* i386 GNU/Linux implementation of the report_signal_info
gdbarch hook. Displays information related to MPX bound
violations. */
void
-i386_linux_handle_segmentation_fault (struct gdbarch *gdbarch,
- struct ui_out *uiout)
+i386_linux_report_signal_info (struct gdbarch *gdbarch, struct ui_out *uiout,
+ enum gdb_signal siggnal)
{
/* -Wmaybe-uninitialized */
CORE_ADDR lower_bound = 0, upper_bound = 0, access = 0;
int is_upper;
long sig_code = 0;
- if (!i386_mpx_enabled ())
+ if (!i386_mpx_enabled () || siggnal != GDB_SIGNAL_SEGV)
return;
try
@@ -1073,8 +1073,7 @@ i386_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
i386_linux_get_syscall_number);
set_gdbarch_get_siginfo_type (gdbarch, x86_linux_get_siginfo_type);
- set_gdbarch_handle_segmentation_fault (gdbarch,
- i386_linux_handle_segmentation_fault);
+ set_gdbarch_report_signal_info (gdbarch, i386_linux_report_signal_info);
}
void _initialize_i386_linux_tdep ();