| From 71956c369a72a64ff26ca90198a42f0bf2967217 Mon Sep 17 00:00:00 2001 |
| From: Stefan Liebler <stli@linux.vnet.ibm.com> |
| Date: Thu, 27 Jul 2017 10:53:58 +0200 |
| Subject: [PATCH 06/10] S390: Add new hwcap values for new cpu architecture - |
| arch12. |
| |
| upstream-commit f21f59124d8a4d22b20e7a926462937d89e8988e |
| |
| 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. |
| |
| sysdeps/s390/dl-procinfo.c | 5 +++-- |
| sysdeps/s390/dl-procinfo.h | 5 ++++- |
| sysdeps/unix/sysv/linux/s390/bits/hwcap.h | 3 +++ |
| 3 files changed, 10 insertions(+), 3 deletions(-) |
| |
| diff --git a/sysdeps/s390/dl-procinfo.c b/sysdeps/s390/dl-procinfo.c |
| index f353528..aa08eca 100644 |
| |
| |
| @@ -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 80747f0..748c3d1 100644 |
| |
| |
| @@ -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 bd2ce3a..58b1929 100644 |
| |
| |
| @@ -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 |
| -- |
| 1.8.3.1 |
| |