simdpp::split

From libsimdpp-docs
template< unsigned N, class E >

void split( const Ret<N*2,E>& a,

            const Vec1<N>& r1, const Vec2<N>& r2 );

Splits a vectors into two vectors twice as narrow. The implementation behaves as if the following set of overloads is provided:

Ret Vec1 Vec2
int8 int8 int8
uint8 uint8 int8
int16 int16 int16
uint16 uint16 uint16
int32 int32 int32
uint32 uint32 uint32
int64 int64 int64
uint64 uint64 uint64
float32 float32 float32
float64 float64 float64

Parameters[edit]

a - vector to split
r1, r2 - result vectors

Return value[edit]

(none)

Equivalent operation[edit]

r0 = a0
...
rM = aM
r{M+1} = b0
...
r{M+M} = bM

See also[edit]