Use SIGTRAP si_code values for all FreeBSD architectures on 11.3 and later.

Fixes to set correct si_code values (such as TRAP_BRKPT) were made to
the remaining FreeBSD architectures (MIPS and sparc64) in the head
branch leading up to 12.0 and were merged back between the 11.2 and
11.3 releases.

gdb/ChangeLog:

	* fbsd-nat.h: Include <osreldate.h>.  Define USE_SIGTRAP_SIGINFO
	for all architectures on FreeBSD 11.3 and later.
This commit is contained in:
John Baldwin 2020-07-27 08:58:48 -07:00
parent a4089f524f
commit ddce17585c
2 changed files with 14 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2020-07-27 John Baldwin <jhb@FreeBSD.org>
* fbsd-nat.h: Include <osreldate.h>. Define USE_SIGTRAP_SIGINFO
for all architectures on FreeBSD 11.3 and later.
2020-07-27 Tom Tromey <tromey@adacore.com>
* gcore.h (load_corefile): Don't declare.

View File

@ -21,11 +21,17 @@
#define FBSD_NAT_H
#include "inf-ptrace.h"
#include <osreldate.h>
#include <sys/proc.h>
#ifdef TRAP_BRKPT
/* MIPS does not set si_code for SIGTRAP. sparc64 reports
non-standard values in si_code for SIGTRAP. */
/* FreeBSD kernels 11.3 and later report valid si_code values for
SIGTRAP on all architectures. Older FreeBSD kernels that supported
TRAP_BRKPT did not report valid values for MIPS and sparc64. Even
older kernels without TRAP_BRKPT support did not report valid
values on any architecture. */
#if (__FreeBSD_kernel_version >= 1102502) || (__FreeBSD_version >= 1102502)
# define USE_SIGTRAP_SIGINFO
#elif defined(TRAP_BRKPT)
# if !defined(__mips__) && !defined(__sparc64__)
# define USE_SIGTRAP_SIGINFO
# endif