aboutsummaryrefslogtreecommitdiff
path: root/gdb/unwind_stop_reasons.def
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2016-04-15 23:52:00 +0100
committerPedro Alves <palves@redhat.com>2016-04-15 23:52:00 +0100
commit77770d832135a252d22eb95166c5ccfd40ca6a69 (patch)
treea8663000ea9b40433c18c96e361c864c9e166493 /gdb/unwind_stop_reasons.def
parent415fa612334afb70600c2a7dbd2c2ff56ebbc4f3 (diff)
downloadgdb-77770d832135a252d22eb95166c5ccfd40ca6a69.zip
gdb-77770d832135a252d22eb95166c5ccfd40ca6a69.tar.gz
gdb-77770d832135a252d22eb95166c5ccfd40ca6a69.tar.bz2
MIPS/Linux: Also recognize TRAP_BRKPT and TRAP_HWBKPT
This makes the MIPS Linux backends recognize TRAP_BRKPT and TRAP_HWBKPT in siginfo.si_code in addition to SI_KERNEL, since Linux 4.6 now reports the finer-grained si_code values too. Refs: https://sourceware.org/ml/gdb-patches/2016-02/msg00756.html https://sourceware.org/ml/gdb-patches/2016-04/msg00090.html On kernels that report SI_KERNEL (<= 4.5), we'll enter the "ambiguous" path of save_stop_reason: if (GDB_ARCH_IS_TRAP_BRKPT (siginfo.si_code) && GDB_ARCH_IS_TRAP_HWBKPT (siginfo.si_code)) { /* The si_code is ambiguous on this arch -- check debug registers. */ if (!check_stopped_by_watchpoint (lp)) lp->stop_reason = TARGET_STOPPED_BY_SW_BREAKPOINT; } while on kernels that report the finer-grained si_code values (>= 4.6), we'll enter the corresponding branches: else if (GDB_ARCH_IS_TRAP_BRKPT (siginfo.si_code)) { } else if (GDB_ARCH_IS_TRAP_HWBKPT (siginfo.si_code)) { ... gdb/ChangeLog: 2016-04-15 Pedro Alves <palves@redhat.com> * nat/linux-ptrace.h [__mips__] (GDB_ARCH_IS_TRAP_BRKPT): Also accept TRAP_BRKPT. [__mips__] (GDB_ARCH_IS_TRAP_HWBKPT): Also accept TRAP_HWBKPT.
Diffstat (limited to 'gdb/unwind_stop_reasons.def')
0 files changed, 0 insertions, 0 deletions