diff options
author | Stefan Liebler <stli@linux.vnet.ibm.com> | 2017-06-27 17:09:42 +0200 |
---|---|---|
committer | Stefan Liebler <stli@linux.vnet.ibm.com> | 2017-06-27 17:09:42 +0200 |
commit | f21f59124d8a4d22b20e7a926462937d89e8988e (patch) | |
tree | 630ddf143ec955df42dd42e08ced13e894f19a31 | |
parent | e94c31035739b693c3699b3c4cad0206631fbee7 (diff) | |
download | glibc-f21f59124d8a4d22b20e7a926462937d89e8988e.tar glibc-f21f59124d8a4d22b20e7a926462937d89e8988e.tar.gz glibc-f21f59124d8a4d22b20e7a926462937d89e8988e.tar.bz2 glibc-f21f59124d8a4d22b20e7a926462937d89e8988e.zip |
S390: Add new hwcap values for new cpu architecture - arch12.
The new hwcap values indicate support for:
- Vector packed decimal facility
- Vector enhancements facility 1
- Guarded storage facility
Note: arch12 is NOT the official name of the new CPU.
It refers to the edition number of the Principle of Operations manual.
ChangeLog:
* sysdeps/s390/dl-procinfo.c (_dl_s390_cap_flags):
Add vxd, vxe, gs flag.
* sysdeps/s390/dl-procinfo.h: Add HWCAP_S390_VXD, HWCAP_S390_VXE,
HWCAP_S390_GS capability.
* sysdeps/unix/sysv/linux/s390/bits/hwcap.h
(HWCAP_S390_VXD, HWCAP_S390_VXE, HWCAP_S390_GS): Define.
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | sysdeps/s390/dl-procinfo.c | 5 | ||||
-rw-r--r-- | sysdeps/s390/dl-procinfo.h | 5 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/s390/bits/hwcap.h | 3 |
4 files changed, 19 insertions, 3 deletions
@@ -1,3 +1,12 @@ +2017-06-27 Stefan Liebler <stli@linux.vnet.ibm.com> + + * sysdeps/s390/dl-procinfo.c (_dl_s390_cap_flags): + Add vxd, vxe, gs flag. + * sysdeps/s390/dl-procinfo.h: Add HWCAP_S390_VXD, HWCAP_S390_VXE, + HWCAP_S390_GS capability. + * sysdeps/unix/sysv/linux/s390/bits/hwcap.h + (HWCAP_S390_VXD, HWCAP_S390_VXE, HWCAP_S390_GS): Define. + 2017-06-27 H.J. Lu <hongjiu.lu@intel.com> * sysdeps/x86_64/multiarch/memcmp-avx2-movbe.S (MEMCMP): Check diff --git a/sysdeps/s390/dl-procinfo.c b/sysdeps/s390/dl-procinfo.c index 4fcde8e889..436e205045 100644 --- a/sysdeps/s390/dl-procinfo.c +++ b/sysdeps/s390/dl-procinfo.c @@ -46,11 +46,12 @@ #if !defined PROCINFO_DECL && defined SHARED ._dl_s390_cap_flags #else -PROCINFO_CLASS const char _dl_s390_cap_flags[12][9] +PROCINFO_CLASS const char _dl_s390_cap_flags[15][9] #endif #ifndef PROCINFO_DECL = { - "esan3", "zarch", "stfle", "msa", "ldisp", "eimm", "dfp", "edat", "etf3eh", "highgprs", "te", "vx" + "esan3", "zarch", "stfle", "msa", "ldisp", "eimm", "dfp", "edat", "etf3eh", + "highgprs", "te", "vx", "vxd", "vxe", "gs" } #endif #if !defined SHARED || defined PROCINFO_DECL diff --git a/sysdeps/s390/dl-procinfo.h b/sysdeps/s390/dl-procinfo.h index c99789629a..1645cf3b48 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 12 +#define _DL_HWCAP_COUNT 15 #define _DL_PLATFORMS_COUNT 8 @@ -51,6 +51,9 @@ enum HWCAP_S390_HIGH_GPRS = 1 << 9, HWCAP_S390_TE = 1 << 10, HWCAP_S390_VX = 1 << 11, + HWCAP_S390_VXD = 1 << 12, + HWCAP_S390_VXE = 1 << 13, + HWCAP_S390_GS = 1 << 14, }; #define HWCAP_IMPORTANT (HWCAP_S390_ZARCH | HWCAP_S390_LDISP \ diff --git a/sysdeps/unix/sysv/linux/s390/bits/hwcap.h b/sysdeps/unix/sysv/linux/s390/bits/hwcap.h index 6a7e4328c0..ecaa8d3e04 100644 --- a/sysdeps/unix/sysv/linux/s390/bits/hwcap.h +++ b/sysdeps/unix/sysv/linux/s390/bits/hwcap.h @@ -36,3 +36,6 @@ #define HWCAP_S390_HIGH_GPRS 512 #define HWCAP_S390_TE 1024 #define HWCAP_S390_VX 2048 +#define HWCAP_S390_VXD 4096 +#define HWCAP_S390_VXE 8192 +#define HWCAP_S390_GS 16384 |