You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.8 KiB
46 lines
1.8 KiB
6 years ago
|
commit 718ee4dc9b09491707420ae403ad1ce8dfdb61b2
|
||
|
Author: Ulrich Weigand <ulrich.weigand@de.ibm.com>
|
||
|
Date: Thu Jan 30 19:12:35 2014 +0100
|
||
|
|
||
|
Add support for AT_HWCAP2 auxv entry
|
||
|
|
||
|
Recent ppc64 Linux kernels provide a new auxv entry AT_HWCAP2,
|
||
|
which is currently not recognized by GDB, causing every use of
|
||
|
"info auxv" to show an error.
|
||
|
|
||
|
This commit adds the AT_HWCAP2 define to include/elf/common.h
|
||
|
and handles it in GDB.
|
||
|
|
||
|
include/elf/ChangeLog:
|
||
|
|
||
|
* common.h (AT_HWCAP2): Define.
|
||
|
|
||
|
gdb/ChangeLog:
|
||
|
|
||
|
* auxv.c (fprint_target_auxv): Handle AT_HWCAP2.
|
||
|
|
||
|
Index: gdb-7.6.1/gdb/auxv.c
|
||
|
===================================================================
|
||
|
--- gdb-7.6.1.orig/gdb/auxv.c
|
||
|
+++ gdb-7.6.1/gdb/auxv.c
|
||
|
@@ -441,6 +441,7 @@ fprint_target_auxv (struct ui_file *file
|
||
|
TAG (AT_IGNOREPPC, _("Entry should be ignored"), dec);
|
||
|
TAG (AT_BASE_PLATFORM, _("String identifying base platform"), str);
|
||
|
TAG (AT_RANDOM, _("Address of 16 random bytes"), hex);
|
||
|
+ TAG (AT_HWCAP2, _("Extension of AT_HWCAP"), hex);
|
||
|
TAG (AT_EXECFN, _("File name of executable"), str);
|
||
|
TAG (AT_SECURE, _("Boolean, was exec setuid-like?"), dec);
|
||
|
TAG (AT_SYSINFO, _("Special system info/entry points"), hex);
|
||
|
Index: gdb-7.6.1/include/elf/common.h
|
||
|
===================================================================
|
||
|
--- gdb-7.6.1.orig/include/elf/common.h
|
||
|
+++ gdb-7.6.1/include/elf/common.h
|
||
|
@@ -954,6 +954,7 @@
|
||
|
#define AT_BASE_PLATFORM 24 /* String identifying real platform,
|
||
|
may differ from AT_PLATFORM. */
|
||
|
#define AT_RANDOM 25 /* Address of 16 random bytes. */
|
||
|
+#define AT_HWCAP2 26 /* Extension of AT_HWCAP. */
|
||
|
#define AT_EXECFN 31 /* Filename of executable. */
|
||
|
/* Pointer to the global system page used for system calls and other
|
||
|
nice things. */
|