Proper SIMD operations as shuffling, splitting and merging SIMD vectors
Variables | |
| constexpr auto | eve::broadcast = functor<broadcast_t> |
| Computes the. | |
| constexpr auto | eve::combine = functor<combine_t> |
| Combines two SIMD values in a larger one. | |
| constexpr auto | eve::gather = functor<gather_t> |
| Load a SIMD value with values selected from a memory region at the given offsets. | |
| constexpr auto | eve::has_equal_in = functor<has_equal_in_t> |
Given two simd_values: x, match_against returns a logical mask. The res[i] == eve::any(x[i] == match_against);. | |
| constexpr auto | eve::iterate_selected = functor<iterate_selected_t> |
a utility to do scalar iteration over all true elements in a logical. | |
| constexpr auto | eve::scan = functor<scan_t> |
| Computes the generalized prefix sum over a simd value. | |
| constexpr auto | eve::scatter = functor<scatter_t> |
| Store a SIMD register to memory using scattered indexes. | |
| constexpr auto | eve::sort = functor<sort_t> |
| sorts a register in a accedning order accroding to a comparator. | |
| constexpr auto | eve::zip = functor<zip_t> |
| Callable for SoA value constructions. | |