diff options
author | Ashkan Aliabadi <ashkan.aliabadi@gmail.com> | 2020-06-11 21:17:20 -0700 |
---|---|---|
committer | Ashkan Aliabadi <ashkan.aliabadi@gmail.com> | 2020-06-11 21:17:20 -0700 |
commit | f55824179793d83183f0c8caf20c4b57db2f5f3b (patch) | |
tree | 00c96496989e83c32fab1b6bd689091a1cfc25b9 /include/cpuinfo.h | |
parent | 6cecd15784fcb6c5c0aa7311c6248879ce2cb8b2 (diff) | |
download | cpuinfo-f55824179793d83183f0c8caf20c4b57db2f5f3b.tar.gz |
Upstream cpuinfo updates as of XNNPACK:016e586e984c2d05a38a7d98fcade8f165a79278.
Diffstat (limited to 'include/cpuinfo.h')
-rw-r--r-- | include/cpuinfo.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/include/cpuinfo.h b/include/cpuinfo.h index 6c67c34..85ce174 100644 --- a/include/cpuinfo.h +++ b/include/cpuinfo.h @@ -417,6 +417,8 @@ enum cpuinfo_uarch { cpuinfo_uarch_cortex_a76 = 0x00300376, /** ARM Cortex-A77. */ cpuinfo_uarch_cortex_a77 = 0x00300377, + /** ARM Cortex-A78. */ + cpuinfo_uarch_cortex_a78 = 0x00300378, /** ARM Neoverse N1. */ cpuinfo_uarch_neoverse_n1 = 0x00300400, @@ -1434,6 +1436,7 @@ static inline bool cpuinfo_has_x86_sha(void) { bool armv6k; bool armv7; bool armv7mp; + bool armv8; bool idiv; bool vfpv2; @@ -1521,6 +1524,16 @@ static inline bool cpuinfo_has_arm_v7mp(void) { #endif } +static inline bool cpuinfo_has_arm_v8(void) { + #if CPUINFO_ARCH_ARM64 + return true; + #elif CPUINFO_ARCH_ARM + return cpuinfo_isa.armv8; + #else + return false; + #endif +} + static inline bool cpuinfo_has_arm_idiv(void) { #if CPUINFO_ARCH_ARM64 return true; @@ -1645,6 +1658,16 @@ static inline bool cpuinfo_has_arm_neon_fma(void) { #endif } +static inline bool cpuinfo_has_arm_neon_v8(void) { + #if CPUINFO_ARCH_ARM64 + return true; + #elif CPUINFO_ARCH_ARM + return cpuinfo_isa.neon && cpuinfo_isa.armv8; + #else + return false; + #endif +} + static inline bool cpuinfo_has_arm_atomics(void) { #if CPUINFO_ARCH_ARM64 return cpuinfo_isa.atomics; |