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

◆ hi

auto eve::hi = functor<hi_t>
inlineconstexpr

Header file

#include <eve/module/core.hpp>

Callable Signatures

namespace eve
{
constexpr auto hi(value auto x) noexcept;
}
The concept value<T> is satisfied if and only if T satisfies either eve::scalar_value or eve::simd_va...
Definition value.hpp:34
constexpr auto hi
elementwise_callable computing the most significant half of each lane.
Definition hi.hpp:71
EVE Main Namespace.
Definition abi.hpp:18

Parameters

Return value

  • Computes the elementwise higher significant half of the value bits, returning each element as an unsigned integer of half the size of the input element.
Note
If you also need the lower part lohi is more efficient.

Example

// revision 0
#include <eve/module/core.hpp>
#include <iostream>
int main()
{
eve::wide wf0{0.0, 1.0, 2.0, 3.0, -1.0, -2.0, -3.0, -4.0};
eve::wide wi0{0, 1, 2, 3, -1, -2, -3, -4};
eve::wide wu0{0u, 1u, 2u, 3u, 4u, 5u, 6u, 7u};
std::cout << "<- wf0 = " << wf0 << "\n";
std::cout << "<- wi0 = " << wi0 << "\n";
std::cout << "<- wu0 = " << wu0 << "\n";
std::cout << "-> hi(wf0) = " << eve::hi(wf0) << "\n";
std::cout << "-> hi(wu0) = " << eve::hi(wu0) << "\n";
std::cout << "-> hi(wi0) = " << eve::hi(wi0) << "\n";
}
Wrapper for SIMD registers.
Definition wide.hpp:86