SIMD module

store

procedure · 1 overloadSource

Writes the lanes of a to memory starting at byte address base, in lane order, as one contiguous block of size_of(a) bytes. No alignment is needed.

The caller guarantees the room; nothing is bounds-checked, and a null base fails an assert.

ExampleOpen in playground ↗
storage: [4] s32;
store(storage.data, set(4, cast(s32) 9));
assert(storage[0] == 9 && storage[3] == 9);
store :: (base: *void, a: $T/SIMD_Array)

Writes the lanes of a to memory starting at byte address base, in lane order, as one contiguous block of size_of(a) bytes. No alignment is needed.

The caller guarantees the room; nothing is bounds-checked, and a null base fails an assert.

Parameters

base: *void
ExampleOpen in playground ↗
storage: [4] s32;
store(storage.data, set(4, cast(s32) 9));
assert(storage[0] == 9 && storage[3] == 9);

See also