|
vir-simd 0.4.189
Parallelism TS 2 extensions and simd fallback implementation
|
Predefined permutations. More...
Variables | |
| constexpr DuplicateEven | duplicate_even {} |
| Copies even elements into odd elements. | |
| constexpr DuplicateOdd | duplicate_odd {} |
| Copies odd elements into even elements. | |
| template<unsigned N = 1u> | |
| constexpr SwapNeighbors< N > | swap_neighbors {} |
Swaps N neighboring elements. | |
| template<int Position> | |
| constexpr Broadcast< Position > | broadcast {} |
Copy element at index Position into all elements. | |
| constexpr Broadcast< 0 > | broadcast_first {} |
| Copy the first element into all elements. | |
| constexpr Broadcast<-1 > | broadcast_last {} |
| Copy the last element into all elements. | |
| constexpr Reverse | reverse {} |
| Reverse the elements. | |
| template<int Offset> | |
| constexpr Rotate< Offset > | rotate {} |
Rotate the elements by Offset. | |
| template<int Offset> | |
| constexpr Shift< Offset > | shift {} |
Shift the elements by Offset. | |
Predefined permutations.
|
inlineconstexpr |
Swaps N neighboring elements.
| N | For N == 1 swaps actual neighbors. Otherwise consider N elements to be one entity to be swapped with the corresponding N neighboring elements. |