[PATCH 2/2] [gdb] Handle AT_HWCAP3/AT_HWCAP4 in default_print_auxv_entry
Simon Marchi
simark@simark.ca
Fri Jan 16 17:16:15 GMT 2026
On 2026-01-16 08:27, Tom de Vries wrote:
> On aarch64-linux, I run into:
> ...
> (gdb) info auxv^M
> ...
> 26 AT_HWCAP2 Extension of AT_HWCAP 0x181^M
> 29 ??? 0x0^M
> 31 AT_EXECFN File name of executable 0xffffffffffb9 ...
> ...
> 28 AT_RSEQ_ALIGN rseq allocation alignment 32^M
> 0 AT_NULL End of vector 0x0^M
> (gdb) WARNING: Unrecognized tag value: 29 ... ??? ... 0x0^M
> FAIL: gdb.base/auxv.exp: info auxv on live process
> ...
>
> Fix this by handling AT_HWCAP3 in default_print_auxv_entry. Likewise for
> AT_HWCAP4.
>
> Tested on aarch64-linux.
>
> Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=32590
> ---
> gdb/auxv.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/gdb/auxv.c b/gdb/auxv.c
> index 368e0aa2c2b..59f38d3cf49 100644
> --- a/gdb/auxv.c
> +++ b/gdb/auxv.c
> @@ -497,6 +497,8 @@ default_print_auxv_entry (struct gdbarch *gdbarch, struct ui_file *file,
> AUXV_FORMAT_STR);
> TAG (AT_RANDOM, _("Address of 16 random bytes"), AUXV_FORMAT_HEX);
> TAG (AT_HWCAP2, _("Extension of AT_HWCAP"), AUXV_FORMAT_HEX);
> + TAG (AT_HWCAP3, _("Extension of AT_HWCAP"), AUXV_FORMAT_HEX);
> + TAG (AT_HWCAP4, _("Extension of AT_HWCAP"), AUXV_FORMAT_HEX);
> TAG (AT_RSEQ_FEATURE_SIZE, _("rseq supported feature size"),
> AUXV_FORMAT_DEC);
> TAG (AT_RSEQ_ALIGN, _("rseq allocation alignment"),
Approved-By: Simon Marchi <simon.marchi@efficios.com>
Random throught: it would be nice to print out a human-readable
interpretation of those HWCAP values. It would have to be done in a
gdbarch-specific way.
Simon
More information about the Binutils
mailing list