This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Update ARM HWCAP data


This patch updates the ARM HWCAP data (both bits/hwcap.h and
dl-procinfo.[ch]) to match Linux 3.13.  Committed.  (Noticing the
addition of an HWCAP value in 3.13 was what prompted my question about
review of recent Linux kernel changes.  I haven't checked other
architectures with HWCAP data in glibc for whether they need updates
to match current Linux kernels - or checked for architectures in glibc
that don't have HWCAP data although the kernel does, although at
appears that at least AArch64 is such an architecture missing glibc
support for kernel HWCAP data.)

2014-02-20  Joseph Myers  <joseph@codesourcery.com>

	* sysdeps/unix/sysv/linux/arm/bits/hwcap.h (HWCAP_ARM_VFPD32): New
	macro.
	(HWCAP_ARM_LPAE): Likewise.
	(HWCAP_ARM_EVTSTRM): Likewise.
	* sysdeps/unix/sysv/linux/arm/dl-procinfo.c (_dl_arm_cap_flags):
	Add vpfd32, lpae and evtstrm.
	* sysdeps/unix/sysv/linux/arm/dl-procinfo.h (_DL_HWCAP_COUNT):
	Increase to 22.

diff --git a/sysdeps/unix/sysv/linux/arm/bits/hwcap.h b/sysdeps/unix/sysv/linux/arm/bits/hwcap.h
index b438d2a..cd8f93c 100644
--- a/sysdeps/unix/sysv/linux/arm/bits/hwcap.h
+++ b/sysdeps/unix/sysv/linux/arm/bits/hwcap.h
@@ -40,3 +40,6 @@
 #define HWCAP_ARM_VFPv4		65536
 #define HWCAP_ARM_IDIVA		131072
 #define HWCAP_ARM_IDIVT		262144
+#define HWCAP_ARM_VFPD32	524288
+#define HWCAP_ARM_LPAE		1048576
+#define HWCAP_ARM_EVTSTRM	2097152
diff --git a/sysdeps/unix/sysv/linux/arm/dl-procinfo.c b/sysdeps/unix/sysv/linux/arm/dl-procinfo.c
index d304539..113cda5 100644
--- a/sysdeps/unix/sysv/linux/arm/dl-procinfo.c
+++ b/sysdeps/unix/sysv/linux/arm/dl-procinfo.c
@@ -46,13 +46,13 @@
 #if !defined PROCINFO_DECL && defined SHARED
   ._dl_arm_cap_flags
 #else
-PROCINFO_CLASS const char _dl_arm_cap_flags[19][10]
+PROCINFO_CLASS const char _dl_arm_cap_flags[22][10]
 #endif
 #ifndef PROCINFO_DECL
 = {
     "swp", "half", "thumb", "26bit", "fastmult", "fpa", "vfp", "edsp",
     "java", "iwmmxt", "crunch", "thumbee", "neon", "vfpv3", "vfpv3d16",
-    "tls", "vfpv4", "idiva", "idivt",
+    "tls", "vfpv4", "idiva", "idivt", "vfpd32", "lpae", "evtstrm",
   }
 #endif
 #if !defined SHARED || defined PROCINFO_DECL
diff --git a/sysdeps/unix/sysv/linux/arm/dl-procinfo.h b/sysdeps/unix/sysv/linux/arm/dl-procinfo.h
index 2f8f003..20a3e92 100644
--- a/sysdeps/unix/sysv/linux/arm/dl-procinfo.h
+++ b/sysdeps/unix/sysv/linux/arm/dl-procinfo.h
@@ -23,7 +23,7 @@
 #include <ldsodefs.h>
 #include <sysdep.h>
 
-#define _DL_HWCAP_COUNT 19
+#define _DL_HWCAP_COUNT 22
 
 /* The kernel provides platform data but it is not interesting.  */
 #define _DL_HWCAP_PLATFORM 	0

-- 
Joseph S. Myers
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]