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.
This commit is contained in:
Feng Xue 2018-08-01 03:42:44 -04:00
parent 114f792eae
commit 07c3d1ec03
4 changed files with 13 additions and 1 deletions

View File

@ -1,3 +1,11 @@
2019-02-01 Feng Xue <fxue@os.amperecomputing.com>
* 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.
2019-02-01 Stefan Liebler <stli@linux.ibm.com>
* posix/tst-spawn do_test(): Move waitpid before posix_spawn.

View File

@ -360,7 +360,7 @@ This tunable is specific to powerpc, powerpc64 and powerpc64le.
The @code{glibc.cpu.name=xxx} tunable allows the user to tell @theglibc{} to
assume that the CPU is @code{xxx} where xxx may have one of these values:
@code{generic}, @code{falkor}, @code{thunderxt88}, @code{thunderx2t99},
@code{thunderx2t99p1}, @code{ares}.
@code{thunderx2t99p1}, @code{ares}, @code{emag}.
This tunable is specific to aarch64.
@end deftp

View File

@ -37,6 +37,7 @@ static struct cpu_list cpu_list[] = {
{"thunderx2t99p1", 0x420F5160},
{"phecda", 0x680F0000},
{"ares", 0x411FD0C0},
{"emag", 0x503F0001},
{"generic", 0x0}
};

View File

@ -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;