about summary refs log tree commit diff
diff options
context:
space:
mode:
authorStefan Liebler <stli@linux.ibm.com>2019-03-22 11:14:07 +0100
committerStefan Liebler <stli@linux.ibm.com>2019-03-22 11:14:07 +0100
commit1a7df49c92f62e14d8727f083fd055eba7c91ad9 (patch)
tree898f4d88731aac1c5588ab406f724245ca56016f
parent5abcddd7949270998c6e8d99fdbbba821b664f8b (diff)
downloadglibc-1a7df49c92f62e14d8727f083fd055eba7c91ad9.tar.gz
glibc-1a7df49c92f62e14d8727f083fd055eba7c91ad9.tar.xz
glibc-1a7df49c92f62e14d8727f083fd055eba7c91ad9.zip
S390: Add new hwcap values for new cpu architecture arch13.
The new hwcap values indicate support for:
-"Vector-Enhancements Facility 2" (tag "vxe2", hwcap 2^15)
-"Vector-Packed-Decimal-Enhancement Facility" (tag "vxp", hwcap 2^16)
-"Enhanced-Sort Facility" (tag "sort", hwcap 2^17)
-"Deflate-Conversion Facility" (tag "dflt", hwcap 2^18)

The vxe2 hwcap is also marked as important hwcap.

ChangeLog:

	* sysdeps/s390/dl-procinfo.c (_dl_s390_cap_flags):
	Add vxe2, vxp, dflt, sort flags.
	* sysdeps/s390/dl-procinfo.h: Add HWCAP_S390_VXRS_EXT2,
	HWCAP_S390_VXRS_PDE, HWCAP_S390_SORT, HWCAP_S390_DFLT
	capabilities.
	(HWCAP_IMPORTANT): Add HWCAP_S390_VXRS_EXT2.
	* sysdeps/unix/sysv/linux/s390/bits/hwcap.h
	(HWCAP_S390_VXRS_EXT2, HWCAP_S390_VXRS_PDE, HWCAP_S390_SORT,
	HWCAP_S390_DFLT): Define.
-rw-r--r--ChangeLog12
-rw-r--r--sysdeps/s390/dl-procinfo.c4
-rw-r--r--sysdeps/s390/dl-procinfo.h9
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/hwcap.h4
4 files changed, 25 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index f0ebd06b36..55b06adbbf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2019-03-22  Stefan Liebler  <stli@linux.ibm.com>
+
+	* sysdeps/s390/dl-procinfo.c (_dl_s390_cap_flags):
+	Add vxe2, vxp, dflt, sort flags.
+	* sysdeps/s390/dl-procinfo.h: Add HWCAP_S390_VXRS_EXT2,
+	HWCAP_S390_VXRS_PDE, HWCAP_S390_SORT, HWCAP_S390_DFLT
+	capabilities.
+	(HWCAP_IMPORTANT): Add HWCAP_S390_VXRS_EXT2.
+	* sysdeps/unix/sysv/linux/s390/bits/hwcap.h
+	(HWCAP_S390_VXRS_EXT2, HWCAP_S390_VXRS_PDE, HWCAP_S390_SORT,
+	HWCAP_S390_DFLT): Define.
+
 2019-03-05  Gabriel F. T. Gomes  <gabriel@inconstante.eti.br>
 
 	[BZ #24372]
diff --git a/sysdeps/s390/dl-procinfo.c b/sysdeps/s390/dl-procinfo.c
index 8f581c1982..44c9901800 100644
--- a/sysdeps/s390/dl-procinfo.c
+++ b/sysdeps/s390/dl-procinfo.c
@@ -46,12 +46,12 @@
 #if !defined PROCINFO_DECL && defined SHARED
   ._dl_s390_cap_flags
 #else
-PROCINFO_CLASS const char _dl_s390_cap_flags[15][9]
+PROCINFO_CLASS const char _dl_s390_cap_flags[19][9]
 #endif
 #ifndef PROCINFO_DECL
 = {
      "esan3", "zarch", "stfle", "msa", "ldisp", "eimm", "dfp", "edat", "etf3eh",
-     "highgprs", "te", "vx", "vxd", "vxe", "gs"
+     "highgprs", "te", "vx", "vxd", "vxe", "gs", "vxe2", "vxp", "sort", "dflt"
   }
 #endif
 #if !defined SHARED || defined PROCINFO_DECL
diff --git a/sysdeps/s390/dl-procinfo.h b/sysdeps/s390/dl-procinfo.h
index 99697ae649..3b1f6a642b 100644
--- a/sysdeps/s390/dl-procinfo.h
+++ b/sysdeps/s390/dl-procinfo.h
@@ -21,7 +21,7 @@
 #define _DL_PROCINFO_H	1
 #include <ldsodefs.h>
 
-#define _DL_HWCAP_COUNT 15
+#define _DL_HWCAP_COUNT 19
 
 #define _DL_PLATFORMS_COUNT	9
 
@@ -54,11 +54,16 @@ enum
   HWCAP_S390_VXD = 1 << 12,
   HWCAP_S390_VXE = 1 << 13,
   HWCAP_S390_GS = 1 << 14,
+  HWCAP_S390_VXRS_EXT2 = 1 << 15,
+  HWCAP_S390_VXRS_PDE = 1 << 16,
+  HWCAP_S390_SORT = 1 << 17,
+  HWCAP_S390_DFLT = 1 << 18,
 };
 
 #define HWCAP_IMPORTANT (HWCAP_S390_ZARCH | HWCAP_S390_LDISP \
 			 | HWCAP_S390_EIMM | HWCAP_S390_DFP  \
-			 | HWCAP_S390_VX | HWCAP_S390_VXE)
+			 | HWCAP_S390_VX | HWCAP_S390_VXE    \
+			 | HWCAP_S390_VXRS_EXT2)
 
 /* We cannot provide a general printing function.  */
 #define _dl_procinfo(type, word) -1
diff --git a/sysdeps/unix/sysv/linux/s390/bits/hwcap.h b/sysdeps/unix/sysv/linux/s390/bits/hwcap.h
index 60c38074c4..3608bea25c 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/hwcap.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/hwcap.h
@@ -39,3 +39,7 @@
 #define HWCAP_S390_VXD          4096
 #define HWCAP_S390_VXE          8192
 #define HWCAP_S390_GS           16384
+#define HWCAP_S390_VXRS_EXT2    32768
+#define HWCAP_S390_VXRS_PDE     65536
+#define HWCAP_S390_SORT         131072
+#define HWCAP_S390_DFLT         262144