about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/aarch64/cpu-features.h
diff options
context:
space:
mode:
authorFeng Xue <fxue@os.amperecomputing.com>2018-08-01 03:42:44 -0400
committerFeng Xue <fxue@os.amperecomputing.com>2019-02-01 07:59:18 -0500
commit07c3d1ec03ee3633918afb59213cd1bac2ab276e (patch)
tree8652dd6bb415be5a1b00e953b97613e37c86876c /sysdeps/unix/sysv/linux/aarch64/cpu-features.h
parent114f792eaea2505cd8aee02d330aad37238da6a5 (diff)
downloadglibc-07c3d1ec03ee3633918afb59213cd1bac2ab276e.tar.gz
glibc-07c3d1ec03ee3633918afb59213cd1bac2ab276e.tar.xz
glibc-07c3d1ec03ee3633918afb59213cd1bac2ab276e.zip
aarch64: Add AmpereComputing emag to tunable cpu list
Emag is a 64-bit CPU core released by AmpereComputing.

Add its name to cpu list, and corresponding macro as utilities for
later IFUNC dispatch.

    * manual/tunables.texi (Tunable glibc.cpu.name): Add emag.
    * sysdeps/unix/sysv/linux/aarch64/cpu-features.c (cpu_list):
    Add emag.
    * sysdeps/unix/sysv/linux/aarch64/cpu-features.h (IS_EMAG):
    New macro.
Diffstat (limited to 'sysdeps/unix/sysv/linux/aarch64/cpu-features.h')
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/cpu-features.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/aarch64/cpu-features.h b/sysdeps/unix/sysv/linux/aarch64/cpu-features.h
index 6f8b35ff09..127391138d 100644
--- a/sysdeps/unix/sysv/linux/aarch64/cpu-features.h
+++ b/sysdeps/unix/sysv/linux/aarch64/cpu-features.h
@@ -54,6 +54,9 @@
 #define IS_ARES(midr) (MIDR_IMPLEMENTOR(midr) == 'A'			      \
 			&& MIDR_PARTNUM(midr) == 0xd0c)
 
+#define IS_EMAG(midr) (MIDR_IMPLEMENTOR(midr) == 'P'			      \
+                       && MIDR_PARTNUM(midr) == 0x000)
+
 struct cpu_features
 {
   uint64_t midr_el1;