Skip to content

Function concat_and_slice

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

template <size_t start, size_t count, typename T, size_t N>
KFR_INTRINSIC vec<T, count> concat_and_slice(const vec<T, N>& x, const vec<T, N>& y)

Concatenates two equal-length vectors and extracts a slice of length count.

The slice is taken from the concatenated sequence of length 2 * N starting at offset start.

Template parameters
start Index of the first element to extract in the concatenated sequence.
count Number of elements to extract.
T Element type of the vectors.
N Length of each input vector.
Parameters
x First source vector.
y Second source vector.
Returns
A vector of length count drawn from the concatenated sequence.

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

Declared at simd/shuffle.hpp:525

Function concat_and_slice

function concat_and_slice(const vec<T, N1> &, const vec<T, N2> &) simd

template <size_t start, size_t count, typename T, size_t N1, size_t N2>
    requires(N1 < N2)
KFR_INTRINSIC vec<T, count> concat_and_slice(const vec<T, N1>& x, const vec<T, N2>& y)

Concatenates two vectors of unequal length (first shorter) and extracts a slice.

x is extended to length N2 before concatenation. Active when N1 < N2.

Template parameters
start Index of the first element to extract in the concatenated sequence.
count Number of elements to extract.
T Element type of the vectors.
N1 Length of the first (shorter) input vector.
N2 Length of the second (longer) input vector.
Parameters
x First source vector.
y Second source vector.
Returns
A vector of length count drawn from the concatenated sequence.

Fully qualified name: kfr::concat_and_slice(const vec<T, N1> &, const vec<T, N2> &)

Declared at simd/shuffle.hpp:563

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