std::experimental::simd_abi::fixed_size(3) | C++ Standard Libary | std::experimental::simd_abi::fixed_size(3) |
NAME¶
std::experimental::simd_abi::fixed_size - std::experimental::simd_abi::fixed_size
Synopsis¶
Defined in header <experimental/simd>
template< int N > (parallelism TS v2)
struct fixed_size {};
The simd_abi::fixed_size<N> tag type ensures data-parallel types to
store and
manipulate N elements (i.e. simd<T,
simd_abi::fixed_size<N>>::size() returns N). An
implementation shall support at least all N ∈ [1, 32]. Additionally,
for every
supported simd<T, Abi>, where Abi is an implementation-defined ABI tag,
N = simd<T,
Abi>::size() shall be supported.
Notes¶
An implementation may choose to forego ABI compatibility between
differently
compiled translation units for simd and simd_mask instantiations using the
same
simd_abi::fixed_size<N> tag. Otherwise, the efficiency of simd<T,
Abi> is likely to
be better than simd<T, fixed_size<simd_size_v<T, Abi>>>
(with Abi not an instance of
simd_abi::fixed_size).
Example¶
This section is incomplete
Reason: no example
See also¶
max_fixed_size the maximum number of elements guaranteed to be
supported by
(parallelism TS v2) fixed
(constant)
scalar tag type for storing a single element
(parallelism TS v2) (typedef)
compatible tag type that ensures ABI compatibility
(parallelism TS v2) (alias template)
native tag type that is most efficient
(parallelism TS v2) (alias template)
deduce obtains an ABI type for given element type and number of
deduce_t elements
(parallelism TS v2) (class template)
Category:¶
* Todo no example
2024.06.10 | http://cppreference.com |