std::experimental::simd<T,Abi>::operator==,!=,<,<=,>,>=
From cppreference.com
 
 
 < cpp | experimental | simd | simd 
 
 
 C++ 
 Feature test macros (C++20)
 Concepts library (C++20)
 Metaprogramming library (C++11)
 Ranges library (C++20)
 Filesystem library (C++17)
 Concurrency support library (C++11)
 Execution control library (C++26)
Experimental 
 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)
Extensions for parallelism v2 
   
 Parallel exceptions
 Additional execution policies
 Algorithms
 Task blocks
std::experimental::simd 
   
 
 
 
 
 
 Member functions
 Non-member functions
operator==operator!=operator>=operator<=operator>operator<
friend simd_mask operator==( const simd& lhs, const simd& rhs ) noexcept;
 (1) 
 (parallelism TS v2) 
friend simd_mask operator!=( const simd& lhs, const simd& rhs ) noexcept;
 (2) 
 (parallelism TS v2) 
friend simd_mask operator<( const simd& lhs, const simd& rhs ) noexcept;
 (3) 
 (parallelism TS v2) 
friend simd_mask operator<=( const simd& lhs, const simd& rhs ) noexcept;
 (4) 
 (parallelism TS v2) 
friend simd_mask operator>( const simd& lhs, const simd& rhs ) noexcept;
 (5) 
 (parallelism TS v2) 
friend simd_mask operator>=( const simd& lhs, const simd& rhs ) noexcept;
 (6) 
 (parallelism TS v2) 
Applies the given comparison element-wise to each corresponding element of the operands.
Returns a simd_mask such that for all i in the range of [0, size() ) the ith element equals:
1) lhs[i] == rhs[i].
2) lhs[i] != rhs[i].
3) lhs[i] <  rhs[i].
4) lhs[i] <= rhs[i].
5) lhs[i] >  rhs[i].
6) lhs[i] >= rhs[i].
[edit] Parameters
 lhs
 -
 left operands
 rhs
 -
 right operands
[edit] Example
Run this code
#include <cassert> #include <iostream> #include <initializer_list> #include <iterator> #include <experimental/simd> namespace stdx = std::experimental; int main() { using V = stdx::fixed_size_simd<int, 4>; using M = stdx::fixed_size_simd_mask<int, 4>; auto assert_equivalence = [](M&& x, std::initializer_list <int>&& y) { for (decltype(M::size()) i{}; i != M::size(); ++i) assert (x[i] == std::cbegin (y)[i]); }; V a{2}, b, c{3}; b[0] = 1, b[1] = 2, b[2] = 3, b[3] = 4; // a == {2, 2, 2, 2} // b == {1, 2, 3, 4} // c == {3, 3, 3, 3} assert_equivalence(a == a, {1, 1, 1, 1}); assert_equivalence(a == b, {0, 1, 0, 0}); assert_equivalence(b == c, {0, 0, 1, 0}); assert_equivalence(a == c, {0, 0, 0, 0}); assert_equivalence(a != a, {0, 0, 0, 0}); assert_equivalence(a != b, {1, 0, 1, 1}); assert_equivalence(b != c, {1, 1, 0, 1}); assert_equivalence(a != c, {1, 1, 1, 1}); assert_equivalence(a < a, {0, 0, 0, 0}); assert_equivalence(a < b, {0, 0, 1, 1}); assert_equivalence(b < c, {1, 1, 0, 0}); assert_equivalence(a < c, {1, 1, 1, 1}); }