E.V.E
v2023.02.15
 
Loading...
Searching...
No Matches

◆ all

callable_all_ eve::all = {}
inlineconstexpr

Header file

#include <eve/module/core.hpp>

Callable Signatures

namespace eve
{
// Regular overloads
constexpr auto all(logical_value auto x) noexcept; // 1
constexpr auto all(top_bits auto t) noexcept; // 1
// Lanes masking
constexpr auto all[conditional_expr auto c](/* any of the above overloads */) noexcept; // 2
constexpr auto all[logical_value auto m](/* any of the above overloads */) noexcept; // 2
}
Specifies that a type is a Conditional Expression.
Definition conditional.hpp:28
The concept logical_value<T> is satisfied if and only if T satisfies eve::value and the element type ...
Definition value.hpp:132
constexpr callable_all_ all
Computes a bool value which is true if and only if all elements of x are not zero.
Definition all.hpp:58
EVE Main Namespace.
Definition abi.hpp:18
The cheapest to get bitset for simd logical.
Definition forward.hpp:16

Parameters

Return value

  1. A bool value which is true if and only if all elements of x are not zero.
  2. A masked version which is true if and only if all retained elements of x are not zero.

Example

// revision 0
#include <eve/module/core.hpp>
#include <iostream>
int main()
{
eve::wide wu0{0u, 1u, 2u, 3u, 4u, 5u, 6u, 7u};
std::cout << "<- wu0 = " << wu0 << "\n";
std::cout << "-> all(wu0 <= maximum(wu0)/2) = " << eve::all(wu0 <= eve::maximum(wu0)/2) << "\n";
std::cout << "-> all[ignore_last(2)](wu0 <= maximum(wu0)/2) = " << eve::all[eve::ignore_last(2)](wu0 <= eve::maximum(wu0)/2) << "\n";
}
constexpr callable_maximum_ maximum
Computes the maximal value in a simd vector.
Definition maximum.hpp:55
Conditional expression ignoring the k last lanes from a eve::simd_value.
Definition conditional.hpp:332
Wrapper for SIMD registers.
Definition wide.hpp:86