Go to the source code of this file.
◆ AARCH64_CPU_IMPLEMENTER_CORTEXA72
#define AARCH64_CPU_IMPLEMENTER_CORTEXA72 0x41 |
◆ AARCH64_CPU_IMPLEMENTER_QDF24XX
#define AARCH64_CPU_IMPLEMENTER_QDF24XX 0x51 |
◆ AARCH64_CPU_IMPLEMENTER_THUNERDERX2
#define AARCH64_CPU_IMPLEMENTER_THUNERDERX2 0x43 |
◆ AARCH64_CPU_PART_CORTEXA72
#define AARCH64_CPU_PART_CORTEXA72 0xd08 |
◆ AARCH64_CPU_PART_QDF24XX
#define AARCH64_CPU_PART_QDF24XX 0xc00 |
◆ AARCH64_CPU_PART_THUNERDERX2
#define AARCH64_CPU_PART_THUNERDERX2 0x0af |
◆ CLIB_CPU_OPTIMIZED
#define CLIB_CPU_OPTIMIZED |
Definition at line 39 of file cpu.h.
◆ CLIB_MARCH_FN
#define CLIB_MARCH_FN |
( |
|
fn, |
|
|
|
rtype, |
|
|
|
_args... |
|
) |
| |
Value: int fn ## _selected_priority = 0; \
#define CLIB_CPU_OPTIMIZED
Definition at line 295 of file cpu.h.
◆ CLIB_MARCH_FN_CONSTRUCTOR
#define CLIB_MARCH_FN_CONSTRUCTOR |
( |
|
fn | ) |
|
Value:{ \
{ \
} \
} \
#define CLIB_MARCH_FN_PRIORITY()
Definition at line 283 of file cpu.h.
◆ CLIB_MARCH_FN_PRIORITY
#define CLIB_MARCH_FN_PRIORITY |
( |
| ) |
0 |
◆ CLIB_MARCH_FN_SELECT
#define CLIB_MARCH_FN_SELECT |
( |
|
fn | ) |
(* fn ## _selected) |
◆ CLIB_MARCH_SFX
Definition at line 62 of file cpu.h.
◆ CLIB_MULTIARCH_ARCH_CHECK
#define CLIB_MULTIARCH_ARCH_CHECK |
( |
|
arch, |
|
|
|
fn, |
|
|
|
tgt |
|
) |
| |
Value:if (clib_cpu_supports_ ## arch()) \
return & fn ## _ ##arch;
Definition at line 43 of file cpu.h.
◆ CLIB_MULTIARCH_FN
#define CLIB_MULTIARCH_FN |
( |
|
fn | ) |
fn |
Definition at line 59 of file cpu.h.
◆ CLIB_MULTIARCH_SELECT_FN
#define CLIB_MULTIARCH_SELECT_FN |
( |
|
fn, |
|
|
|
... |
|
) |
| |
Value:__VA_ARGS__ void * fn ## _multiarch_select(void) \
{ \
return & fn; \
}
#define CLIB_MULTIARCH_ARCH_CHECK(arch, fn, tgt)
Definition at line 47 of file cpu.h.
◆ foreach_aarch64_flags
#define foreach_aarch64_flags |
Value:_ (fp, 0) \
_ (asimd, 1) \
_ (evtstrm, 2) \
_ (aarch64_aes, 3) \
_ (pmull, 4) \
_ (sha1, 5) \
_ (sha2, 6) \
_ (crc32, 7) \
_ (atomics, 8) \
_ (fphp, 9) \
_ (asimdhp, 10) \
_ (cpuid, 11) \
_ (asimdrdm, 12) \
_ (jscvt, 13) \
_ (fcma, 14) \
_ (lrcpc, 15) \
_ (dcpop, 16) \
_ (sha3, 17) \
_ (sm3, 18) \
_ (sm4, 19) \
_ (asimddp, 20) \
_ (sha512, 21) \
_ (sve, 22)
Definition at line 77 of file cpu.h.
◆ foreach_march_variant
#define foreach_march_variant |
( |
|
macro, |
|
|
|
x |
|
) |
| |
Definition at line 32 of file cpu.h.
◆ foreach_x86_64_flags
#define foreach_x86_64_flags |
Value:_ (sse3, 1, ecx, 0) \
_ (ssse3, 1, ecx, 9) \
_ (sse41, 1, ecx, 19) \
_ (sse42, 1, ecx, 20) \
_ (avx, 1, ecx, 28) \
_ (avx2, 7, ebx, 5) \
_ (avx512f, 7, ebx, 16) \
_ (x86_aes, 1, ecx, 25) \
_ (sha, 7, ebx, 29) \
_ (invariant_tsc, 0x80000007, edx, 8)
Definition at line 64 of file cpu.h.
◆ clib_cpu_implementer()
static u32 clib_cpu_implementer |
( |
| ) |
|
|
inlinestatic |
◆ clib_cpu_march_priority_avx2()
static int clib_cpu_march_priority_avx2 |
( |
| ) |
|
|
inlinestatic |
◆ clib_cpu_march_priority_avx512()
static int clib_cpu_march_priority_avx512 |
( |
| ) |
|
|
inlinestatic |
◆ clib_cpu_march_priority_cortexa72()
static int clib_cpu_march_priority_cortexa72 |
( |
| ) |
|
|
inlinestatic |
◆ clib_cpu_march_priority_qdf24xx()
static int clib_cpu_march_priority_qdf24xx |
( |
| ) |
|
|
inlinestatic |
◆ clib_cpu_march_priority_thunderx2t99()
static int clib_cpu_march_priority_thunderx2t99 |
( |
| ) |
|
|
inlinestatic |
◆ clib_cpu_part()
static u32 clib_cpu_part |
( |
| ) |
|
|
inlinestatic |
◆ clib_cpu_supports_aes()
◆ clib_get_cpuid()
static int clib_get_cpuid |
( |
const u32 |
lev, |
|
|
u32 * |
eax, |
|
|
u32 * |
ebx, |
|
|
u32 * |
ecx, |
|
|
u32 * |
edx |
|
) |
| |
|
inlinestatic |
◆ format_cpu_flags
◆ format_cpu_model_name
◆ format_cpu_uarch