< cpp‎ | experimental‎ | simd
Technical specifications
Filesystem library (filesystem TS)
Library fundamentals (library fundamentals TS)
Library fundamentals 2 (library fundamentals TS v2)
Library fundamentals 3 (library fundamentals TS v3)
Extensions for parallelism (parallelism TS)
Extensions for parallelism 2 (parallelism TS v2)
Extensions for concurrency (concurrency TS)
Extensions for concurrency 2 (concurrency TS v2)
Concepts (concepts TS)
Ranges (ranges TS)
Reflection (reflection TS)
Mathematical special functions (special functions TR)
Defined in header <experimental/simd>
template< class T, class Abi = simd_abi::compatible<T> >
class simd_mask;
(parallelism TS v2)

The class template simd_mask is a data-parallel type with the element type bool. The width of a given simd_mask instantiation is a constant expression, determined by the template parameters. Specifically, simd_mask<T, Abi>::size() is always simd<T, Abi>::size().


[edit] Template parameters

T - the element type simd_mask applies on
Abi - the ABI type simd_mask applies on

[edit] Helper alias templates

Template Definition
template <class T, int N> using fixed_size_simd_mask simd_mask<T, simd_abi::fixed_size<N>>
template <class T> using native_simd_mask simd_mask<T, simd_abi::native>

[edit] Member types

Member type Definition
value_type bool
reference implementation-defined
simd_type simd<T, Abi>
abi_type Abi

[edit] Member functions

constructs a simd_mask object
(public member function)
loads from address
(public member function)
stores to address
(public member function)
accesses specified element
(public member function)
negates each element
(public member function)
returns the number of elements
(public static member function)

[edit] Non-member functions

element-wise logic operators
element-wise bitwise operators
element-wise compound operators
element-wise relation operators

[edit] Example