native 0.0.1
Vectors, masks and wide register packs for C++26
Loading...
Searching...
No Matches
Vectors and ISA values

Classes

struct  native::simd< bf16, N, Arch >
struct  native::simd< fp16, 32, Arch >
struct  native::simd< bf16, 8, Arch >
struct  native::simd< fp16, 8, Arch >
struct  native::imm_t< K >
struct  native::simd_traits< T >
struct  native::simd_customization< T, Raw, Self >
struct  native::simd< T, N, Arch >
 Omitted architecture arguments use the native.simd provider's baseline. More...
struct  native::simd< float, 4, Arch >
struct  native::simd< float, 8, Arch >
struct  native::simd< T, N, Arch >

Variables

template<std::size_t K>
constexpr imm_t< K > native::imm {}

Detailed Description

One register-shaped value, with the element, lane count and architecture in its type. Import native and compile the caller for the required ISA. CPU and OS feature admission belongs at the application boundary.

template<native::isa<> Arch>
void vector_construction() {
V zero{};
V repeated(2.f);
auto lanes = V{1.f, 2.f, 3.f, 4.f};
static_assert(std::same_as<decltype(lanes), V>);
check(all(zero == V(0.f)));
check(all(repeated == V(2.f)));
}

Variable Documentation

◆ imm

template<std::size_t K>
imm_t<K> native::imm {}
inlineconstexpr

The value form of an immediate: for example, broadcast(v, native::imm<1>).

Definition at line 82 of file common.h.