simdpp::move16_r, move8_r, move4_r, move2_r
From cppreference.com
< shuffle
template<unsigned shift, unsigned N, class V1>
Ret<N, _DETAIL_> move16_r( const any_vec8<N,V1>& a ); |
||
template<unsigned shift, unsigned N, class V1>
Ret<N, _DETAIL_> move8_r( const any_vec16<N,V1>& a ); |
||
template<unsigned shift, unsigned N, class V1>
Ret<N, _DETAIL_> move4_r( const any_vec32<N,V1>& a ); |
||
template<unsigned shift, unsigned N, class V1>
Ret<N, _DETAIL_> move2_r( const any_vec64<N,V1>& a ); |
||
Moves elements within the vector to left (towards the 0-th element) shifting in zeros. Each 128-bit lane within vectors is processed separately.
The return vector type is governed by the expression promotion rules.
Contents |
Parameters
a | - | source vector |
Return value
Equivalent operation
For the any_vec32
case:
shift: pos: 0 1 2 3 0 r = [ a0 a1 a2 a3 ] 1 r = [ 0 a0 a1 a2 ] 2 r = [ 0 0 a0 a1 ] 3 r = [ 0 0 0 a0 ] 4 r = [ 0 0 0 0 ]
See also
This section is incomplete |