detectNativeCpuAndFeatures
Function parameters
Parameters
- cpu_arch:Target.Cpu.Arch
- os:Target.Os
- query:Target.Query
Type definitions in this namespace
Types
Return whether or not the given host is capable of running executables of
Functions
- getExternalExecutor
- Return whether or not the given host is capable of running executables of
- resolveTargetQuery
- Given a `Target.Query`, which specifies in detail which parts of the
Error sets in this namespace
Error Sets
Source
Implementation
fn detectNativeCpuAndFeatures(cpu_arch: Target.Cpu.Arch, os: Target.Os, query: Target.Query) ?Target.Cpu {
// Here we switch on a comptime value rather than `cpu_arch`. This is valid because `cpu_arch`,
// although it is a runtime value, is guaranteed to be one of the architectures in the set
// of the respective switch prong.
switch (builtin.cpu.arch) {
.x86_64, .x86 => {
return @import("system/x86.zig").detectNativeCpuAndFeatures(cpu_arch, os, query);
},
else => {},
}
switch (builtin.os.tag) {
.linux => return linux.detectNativeCpuAndFeatures(),
.macos => return darwin.macos.detectNativeCpuAndFeatures(),
.windows => return windows.detectNativeCpuAndFeatures(),
else => {},
}
// This architecture does not have CPU model & feature detection yet.
// See https://github.com/ziglang/zig/issues/4591
return null;
}