Skip to documentation
SLOP

tiny.simd.TargetRuntime

Reference tiny.simd TargetRuntime

Defined in target.

API (10)

Actions

Public operations.

Fields and members

Public fields and members.

No direct callersNo direct callstargetRuntime
Static calls · unresolved targets: unknown · external targets: unknown.

Source

Source: lib/simd/src/target.zig:236

zig
pub const Runtime = struct {    static: Target,    dispatch_fallback: Target,    disabled: AtomicMask = AtomicMask.init(0),    mocked: AtomicMask = AtomicMask.init(0),    chosen: ChosenTarget = .{},    pub fn init(static: Target) Runtime {        return .{ .static = static, .dispatch_fallback = .emu128 };    }    pub fn disableTargets(self: *Runtime, disabled: Mask) void {        self.disabled.store(disabled);        self.chosen.deinit();    }    pub fn setSupportedTargetsForTest(self: *Runtime, targets: Mask) void {        self.mocked.store(targets);        self.chosen.deinit();    }    pub fn supportedTargets(self: *Runtime, detected: Mask) Mask {        var targets = self.mocked.load();        if (targets == 0) targets = detected;        targets &= ~self.disabled.load();        return if (targets == 0) self.static.bit() else targets;    }    pub fn dispatchedTarget(        self: *Runtime,        detected: Mask,        generated: Mask,    ) Target {        if (self.cachedDispatchedTarget(generated)) |target| return target;        const supported = self.supportedTargets(detected);        self.chosen.update(supported);        return self.selectSupported(supported, generated);    }    fn cachedDispatchedTarget(self: *Runtime, generated: Mask) ?Target {        const supported = self.chosen.load();        return if (supported == 0) null else self.selectSupported(supported, generated);    }    fn selectSupported(self: *Runtime, supported: Mask, generated: Mask) Target {        return bestTarget(supported & generated) orelse self.dispatch_fallback;    }};

Source: lib/simd/src/root.zig:73

zig
pub const TargetRuntime = target.Runtime;
Called byCallstest sourcelib.simd.src.targettest: caller supplied target function...test sourcelib.simd.src.targettest: runtime masks disable mock inva...target.ChosenTargetdeinitTargetRuntimedisableTargets
Static calls · unresolved targets: 1 · external targets: 0.
Called byCallstest sourcelib.simd.src.targettest: runtime masks disable mock inva...test sourcelib.simd.src.targettest: runtime target table selects ev...target.ChosenTargetupdateprivate sourcelib.simd.src.target.RuntimecachedDispatchedTargetprivate sourcelib.simd.src.target.RuntimeselectSupportedTargetRuntimesupportedTargetsTargetRuntimedispatchedTarget
Static calls · unresolved targets: 0 · external targets: 0.
Called byCallsNo direct callstest sourcelib.simd.src.targettest: caller supplied target function...test sourcelib.simd.src.targettest: runtime masks disable mock inva...test sourcelib.simd.src.targettest: runtime target table selects ev...TargetRuntimeinit
Static calls · unresolved targets: 0 · external targets: 0.
Called byCallstest sourcelib.simd.src.targettest: runtime masks disable mock inva...test sourcelib.simd.src.targettest: runtime target table selects ev...target.ChosenTargetdeinitTargetRuntimesetSupportedTargetsForTest
Static calls · unresolved targets: 1 · external targets: 0.
Called byCallsTargetRuntimedispatchedTargettest sourcelib.simd.src.targettest: runtime masks disable mock inva...TargetbitTargetRuntimesupportedTargets
Static calls · unresolved targets: 1 · external targets: 0.

Audit

Definitions6
Public names12
Members5
Version26.7.0
Revisiondaab053ee433