simdpp::shift_l(scalar)

From libsimdpp-docs
< int
template<unsigned N, class E1>
Ret<N, _DETAIL_> shift_l( const Vec1<N,E1>& a, unsigned shift );
template<unsigned shift, unsigned N, class E1>
Ret<N, _DETAIL_> shift_l( const Vec1<N,E1>& a );

Shifts values in the given integer vector left by shift bits. Zero bits are shifted in.

The number of bits to shift must be between 0 and e_bits - 1 inclusive, where e_bits is the number of bits in the element type.

The implementation behaves as if the following set of overloads is provided:

Ret Vec1
int8 int8
uint8 uint8
int16 int16
uint16 uint16
int32 int32
uint32 uint32
int64 int64
uint64 uint64

The return type is a vector expression.

Parameters[edit]

a - integer vector
shift - the number of bits to shift

Return value[edit]

A vector expression evaluating to a << shift.

Equivalent operation[edit]

r0 = a0 << shift
...
rN = aN << shift

See also[edit]

performs left shift by vector
(function template)