cpu.c file
Functions
- static auto vm_cpu_probe_sve(void) -> int
- Probes SVE via Linux AT_HWCAP.
- static auto vm_cpu_probe_sve2(void) -> int
- Probes SVE2 via Linux AT_HWCAP2.
-
auto vm_cpu_compiled_features(void) -> vm_
cpu_ features_ t - ISA bits compiled into this binary.
-
auto vm_cpu_runtime_features(void) -> vm_
cpu_ features_ t - ISA bits detected on this CPU (cached).
-
auto vm_cpu_selected_features(void) -> vm_
cpu_ features_ t - Highest-priority ISA that is both compiled and present.
-
auto vm_cpu_name(const vm_
cpu_ features_ t features) -> const char* - Short name of the highest bit set in
features.
Variables
-
static vm_
cpu_ features_ t runtime_cache - static atomic_int runtime_cached
- static atomic_flag runtime_lock
Function documentation
static int vm_cpu_probe_sve2(void)
Probes SVE2 via Linux AT_HWCAP2.
| Returns | Non-zero if SVE2 is usable. |
|---|
vm_ cpu_ features_ t vm_cpu_compiled_features(void)
ISA bits compiled into this binary.
| Returns | Feature mask of enabled backends. |
|---|
vm_ cpu_ features_ t vm_cpu_runtime_features(void)
ISA bits detected on this CPU (cached).
| Returns | Feature mask of usable backends. |
|---|
vm_ cpu_ features_ t vm_cpu_selected_features(void)
Highest-priority ISA that is both compiled and present.
| Returns | Single selected feature bit (or scalar). |
|---|
const char* vm_cpu_name(const vm_ cpu_ features_ t features)
Short name of the highest bit set in features.
| Parameters | |
|---|---|
| features | Feature mask. |
| Returns | Stable string such as avx2 or scalar. |