Blob Blame History Raw
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.  */