table of contents
std::experimental::split,split_by(3) | C++ Standard Libary | std::experimental::split,split_by(3) |
NAME¶
std::experimental::split,split_by - std::experimental::split,split_by
Synopsis¶
Defined in header <experimental/simd>
template< std::size_t... Sizes, class T, class Abi >
std::tuple<simd<T, simd_abi::deduce_t<T, Sizes>>...>
(1) (parallelism TS v2)
split( const simd<T, Abi>& v ) noexcept;
template< std::size_t... Sizes, class T, class Abi >
std::tuple<simd_mask<T, simd_abi::deduce_t<T, Sizes>>...>
(2) (parallelism TS v2)
split( const simd_mask<T, Abi>& v ) noexcept;
template< class V, class Abi >
std::array<V, simd_size_v<typename V::value_type, Abi> /
V::size()> (3) (parallelism TS v2)
split( const simd<typename V::value_type, Abi>& v )
noexcept;
template< class V, class Abi >
std::array<V, simd_size_v<typename V::value_type, Abi> /
V::size()> (4) (parallelism TS v2)
split( const simd_mask<typename V::value_type, Abi>& v )
noexcept;
template< size_t N, class T, class A >
array<resize_simd<simd_size_v<T, A> / N, simd<T, A>>,
N> (5) (parallelism TS v2)
split_by( const simd<T, A>& v ) noexcept;
template< size_t N, class T, class A >
array<resize_simd<simd_size_v<T, A> / N, simd_mask<T,
A>>, (6) (parallelism TS v2)
N>
split_by( const simd_mask<T, A>& v ) noexcept;
Splits the input simd or simd_mask object into multiple simd or simd_mask
objects.
1,2) Split the input object into potentially different types (e.g. types with
different sizes) of objects. These functions do not participate in
overloading
resolution unless Sizes... sum up to v.size().
3,4) Split the input object into an array of objects. These functions do not
participate in overloading resolution unless
* The array element must be of type simd or simd_mask, for the type of v as
simd
or simd_mask, respectively.
* simd_size_v<typename V::value_type, Abi> is an integral multiple of
V::size().
5,6) Split the input object into an array of objects. These functions shall
not
participate in overload resolution unless simd_size_v<T, A> is an
integral multiple
of N.
Parameters¶
v - the input simd or simd_mask object
Return value¶
1,2) A tuple that contains the splitted simd or simd_mask
objects.
3-6) An array that contains the splitted simd or simd_mask objects.
Example¶
This section is incomplete
Reason: no example
Category:¶
* Todo no example
2024.06.10 | http://cppreference.com |