Support AT_BSDFLAGS on FreeBSD.

FreeBSD's kernel recently added a new ELF auxiliary vector entry
holding a mask of software features provided by the kernel.  This
change fixes 'info auxv' to report the name and description for this
vector entry instead of '???'.

include/ChangeLog:

	* elf/common.h (AT_FREEBSD_BSDFLAGS): Define.

gdb/ChangeLog:

	* fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_BSDFLAGS.
This commit is contained in:
John Baldwin 2020-03-26 09:48:28 -07:00
parent 0826b30a9f
commit a879b4d5a6
4 changed files with 10 additions and 0 deletions

View File

@ -1,3 +1,7 @@
2020-03-26 John Baldwin <jhb@FreeBSD.org>
* fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_BSDFLAGS.
2020-03-26 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (handle_data_member_location, dwarf2_add_field)

View File

@ -1597,6 +1597,7 @@ fbsd_print_auxv_entry (struct gdbarch *gdbarch, struct ui_file *file,
TAG (EHDRFLAGS, _("ELF header e_flags"), AUXV_FORMAT_HEX);
TAG (HWCAP, _("Machine-dependent CPU capability hints"), AUXV_FORMAT_HEX);
TAG (HWCAP2, _("Extension of AT_HWCAP"), AUXV_FORMAT_HEX);
TAG (BSDFLAGS, _("ELF BSD flags"), AUXV_FORMAT_HEX);
}
fprint_auxv_entry (file, name, description, format, type, val);

View File

@ -1,3 +1,7 @@
2020-03-26 John Baldwin <jhb@FreeBSD.org>
* elf/common.h (AT_FREEBSD_BSDFLAGS): Define.
2020-03-24 Martin Liska <mliska@suse.cz>
PR lto/94249

View File

@ -1251,6 +1251,7 @@
#define AT_FREEBSD_EHDRFLAGS 24 /* e_flags field from ELF header. */
#define AT_FREEBSD_HWCAP 25 /* CPU feature flags. */
#define AT_FREEBSD_HWCAP2 26 /* CPU feature flags 2. */
#define AT_FREEBSD_BSDFLAGS 27 /* ELF BSD Flags. */
#define AT_SUN_UID 2000 /* Effective user ID. */
#define AT_SUN_RUID 2001 /* Real user ID. */