Skip to content

Function scatter

function scatter(const T *, const vec<T, N> &) simd

template <size_t Index, size_t... Indices, typename T, size_t N, size_t InIndex = 0>
KFR_INTRINSIC void scatter(const T* base, const vec<T, N>& value)

Scatters elements of value to base at the given compile-time indices.

Template parameters
Index First compile-time destination index.
Indices Remaining compile-time destination indices.
T Element type.
N Input vector length.
InIndex Position within value to write next (defaults to 0).
Parameters
base Pointer to the destination array.
value Vector whose elements are written to base[Index], base[Indices]... in order.

Fully qualified name: kfr::scatter(const T *, const vec<T, N> &)

Function scatter

function scatter(T *, const vec<IT, N> &, const vec<T, Nout> &) simd

template <size_t groupsize = 1, typename T, size_t N, size_t Nout = N * groupsize, typename IT>
KFR_INTRINSIC void scatter(T* base, const vec<IT, N>& offset, const vec<T, Nout>& value)

Scatters N groups of groupsize contiguous elements of value to base using a vector of offsets.

Template parameters
groupsize Number of contiguous elements per group.
T Element type.
N Number of offsets (and groups).
Nout Total number of elements to write (defaults to N*groupsize).
IT Offset integer type.
Parameters
base Pointer to the destination array.
offset Vector of offsets (in groups) into base.
value Vector whose elements are scattered to the destination groups.

Fully qualified name: kfr::scatter(T *, const vec<IT, N> &, const vec<T, Nout> &)

This file was generated by cxxdox, a C++ documentation generator based on MkDocs Material and libclang.