NSIMD documentation
Index | Tutorial | FAQ | Contribute | API overview | API reference | Wrapped intrinsics | Modules

Reinterpret vector of logicals

Description

Reinterpret input vector of logicals into a different vector type of logicals preserving all elements values. The output type must have same length as input type.

C base API (generic)

#define vreinterpretl(a0, from_type, to_type)
#define vreinterpretl_e(a0, from_type, to_type, simd_ext)

C advanced API (generic, requires C11)

#define nsimd_reinterpretl(to_type, a0)

C++ base API (generic)

template <NSIMD_CONCEPT_VALUE_TYPE F, NSIMD_CONCEPT_VALUE_TYPE T> NSIMD_REQUIRES(sizeof_v<F> == sizeof_v<T>) typename simd_traits<T, NSIMD_SIMD>::simd_vectorl NSIMD_VECTORCALL reinterpretl(typename simd_traits<F, NSIMD_SIMD>::simd_vectorl a0, F, T);

C++ advanced API

template <NSIMD_CONCEPT_PACKL ToPackType, NSIMD_CONCEPT_VALUE_TYPE T, NSIMD_CONCEPT_SIMD_EXT SimdExt> NSIMD_REQUIRES((sizeof_v<typename ToPackType::value_type> == sizeof_v<T> && ToPackType::unroll == 1 && std::is_same_v<typename ToPackType::simd_ext, SimdExt>))ToPackType reinterpretl(ToPackType const&, packl<T, 1, SimdExt> const& a0);
template <NSIMD_CONCEPT_PACKL ToPackType, NSIMD_CONCEPT_VALUE_TYPE T, int N, NSIMD_CONCEPT_SIMD_EXT SimdExt> NSIMD_REQUIRES((sizeof_v<typename ToPackType::value_type> == sizeof_v<T> && ToPackType::unroll == N && std::is_same_v<typename ToPackType::simd_ext, SimdExt>))ToPackType reinterpretl(ToPackType const&, packl<T, N, SimdExt> const& a0);
template <NSIMD_CONCEPT_PACKL ToPackType, NSIMD_CONCEPT_VALUE_TYPE T, int N, NSIMD_CONCEPT_SIMD_EXT SimdExt> NSIMD_REQUIRES((sizeof_v<typename ToPackType::value_type> == sizeof_v<T> && ToPackType::unroll == N && std::is_same_v<typename ToPackType::simd_ext, SimdExt>))ToPackType reinterpretl(packl<T, N, SimdExt> const& a0);

C base API (architecture specifics)

AVX2

nsimd_avx2_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_avx2_f64_f64(nsimd_avx2_vlf64 a0);
nsimd_avx2_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_avx2_f32_f32(nsimd_avx2_vlf32 a0);
nsimd_avx2_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_avx2_f16_f16(nsimd_avx2_vlf16 a0);
nsimd_avx2_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_avx2_i64_i64(nsimd_avx2_vli64 a0);
nsimd_avx2_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_avx2_i32_i32(nsimd_avx2_vli32 a0);
nsimd_avx2_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_avx2_i16_i16(nsimd_avx2_vli16 a0);
nsimd_avx2_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_avx2_i8_i8(nsimd_avx2_vli8 a0);
nsimd_avx2_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_avx2_u64_u64(nsimd_avx2_vlu64 a0);
nsimd_avx2_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_avx2_u32_u32(nsimd_avx2_vlu32 a0);
nsimd_avx2_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_avx2_u16_u16(nsimd_avx2_vlu16 a0);
nsimd_avx2_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_avx2_u8_u8(nsimd_avx2_vlu8 a0);

SVE512

nsimd_sve512_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_sve512_f64_f64(nsimd_sve512_vlf64 a0);
nsimd_sve512_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_sve512_f32_f32(nsimd_sve512_vlf32 a0);
nsimd_sve512_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_sve512_f16_f16(nsimd_sve512_vlf16 a0);
nsimd_sve512_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_sve512_i64_i64(nsimd_sve512_vli64 a0);
nsimd_sve512_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_sve512_i32_i32(nsimd_sve512_vli32 a0);
nsimd_sve512_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_sve512_i16_i16(nsimd_sve512_vli16 a0);
nsimd_sve512_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_sve512_i8_i8(nsimd_sve512_vli8 a0);
nsimd_sve512_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_sve512_u64_u64(nsimd_sve512_vlu64 a0);
nsimd_sve512_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_sve512_u32_u32(nsimd_sve512_vlu32 a0);
nsimd_sve512_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_sve512_u16_u16(nsimd_sve512_vlu16 a0);
nsimd_sve512_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_sve512_u8_u8(nsimd_sve512_vlu8 a0);

SVE

nsimd_sve_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_sve_f64_f64(nsimd_sve_vlf64 a0);
nsimd_sve_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_sve_f32_f32(nsimd_sve_vlf32 a0);
nsimd_sve_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_sve_f16_f16(nsimd_sve_vlf16 a0);
nsimd_sve_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_sve_i64_i64(nsimd_sve_vli64 a0);
nsimd_sve_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_sve_i32_i32(nsimd_sve_vli32 a0);
nsimd_sve_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_sve_i16_i16(nsimd_sve_vli16 a0);
nsimd_sve_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_sve_i8_i8(nsimd_sve_vli8 a0);
nsimd_sve_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_sve_u64_u64(nsimd_sve_vlu64 a0);
nsimd_sve_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_sve_u32_u32(nsimd_sve_vlu32 a0);
nsimd_sve_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_sve_u16_u16(nsimd_sve_vlu16 a0);
nsimd_sve_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_sve_u8_u8(nsimd_sve_vlu8 a0);

CPU

nsimd_cpu_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_cpu_f64_f64(nsimd_cpu_vlf64 a0);
nsimd_cpu_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_cpu_f32_f32(nsimd_cpu_vlf32 a0);
nsimd_cpu_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_cpu_f16_f16(nsimd_cpu_vlf16 a0);
nsimd_cpu_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_cpu_i64_i64(nsimd_cpu_vli64 a0);
nsimd_cpu_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_cpu_i32_i32(nsimd_cpu_vli32 a0);
nsimd_cpu_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_cpu_i16_i16(nsimd_cpu_vli16 a0);
nsimd_cpu_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_cpu_i8_i8(nsimd_cpu_vli8 a0);
nsimd_cpu_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_cpu_u64_u64(nsimd_cpu_vlu64 a0);
nsimd_cpu_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_cpu_u32_u32(nsimd_cpu_vlu32 a0);
nsimd_cpu_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_cpu_u16_u16(nsimd_cpu_vlu16 a0);
nsimd_cpu_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_cpu_u8_u8(nsimd_cpu_vlu8 a0);

SVE2048

nsimd_sve2048_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_sve2048_f64_f64(nsimd_sve2048_vlf64 a0);
nsimd_sve2048_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_sve2048_f32_f32(nsimd_sve2048_vlf32 a0);
nsimd_sve2048_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_sve2048_f16_f16(nsimd_sve2048_vlf16 a0);
nsimd_sve2048_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_sve2048_i64_i64(nsimd_sve2048_vli64 a0);
nsimd_sve2048_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_sve2048_i32_i32(nsimd_sve2048_vli32 a0);
nsimd_sve2048_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_sve2048_i16_i16(nsimd_sve2048_vli16 a0);
nsimd_sve2048_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_sve2048_i8_i8(nsimd_sve2048_vli8 a0);
nsimd_sve2048_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_sve2048_u64_u64(nsimd_sve2048_vlu64 a0);
nsimd_sve2048_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_sve2048_u32_u32(nsimd_sve2048_vlu32 a0);
nsimd_sve2048_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_sve2048_u16_u16(nsimd_sve2048_vlu16 a0);
nsimd_sve2048_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_sve2048_u8_u8(nsimd_sve2048_vlu8 a0);

NEON128

nsimd_neon128_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_neon128_f64_f64(nsimd_neon128_vlf64 a0);
nsimd_neon128_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_neon128_f32_f32(nsimd_neon128_vlf32 a0);
nsimd_neon128_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_neon128_f16_f16(nsimd_neon128_vlf16 a0);
nsimd_neon128_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_neon128_i64_i64(nsimd_neon128_vli64 a0);
nsimd_neon128_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_neon128_i32_i32(nsimd_neon128_vli32 a0);
nsimd_neon128_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_neon128_i16_i16(nsimd_neon128_vli16 a0);
nsimd_neon128_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_neon128_i8_i8(nsimd_neon128_vli8 a0);
nsimd_neon128_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_neon128_u64_u64(nsimd_neon128_vlu64 a0);
nsimd_neon128_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_neon128_u32_u32(nsimd_neon128_vlu32 a0);
nsimd_neon128_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_neon128_u16_u16(nsimd_neon128_vlu16 a0);
nsimd_neon128_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_neon128_u8_u8(nsimd_neon128_vlu8 a0);

AVX512_SKYLAKE

nsimd_avx512_skylake_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_skylake_f64_f64(nsimd_avx512_skylake_vlf64 a0);
nsimd_avx512_skylake_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_skylake_f32_f32(nsimd_avx512_skylake_vlf32 a0);
nsimd_avx512_skylake_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_skylake_f16_f16(nsimd_avx512_skylake_vlf16 a0);
nsimd_avx512_skylake_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_skylake_i64_i64(nsimd_avx512_skylake_vli64 a0);
nsimd_avx512_skylake_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_skylake_i32_i32(nsimd_avx512_skylake_vli32 a0);
nsimd_avx512_skylake_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_skylake_i16_i16(nsimd_avx512_skylake_vli16 a0);
nsimd_avx512_skylake_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_skylake_i8_i8(nsimd_avx512_skylake_vli8 a0);
nsimd_avx512_skylake_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_skylake_u64_u64(nsimd_avx512_skylake_vlu64 a0);
nsimd_avx512_skylake_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_skylake_u32_u32(nsimd_avx512_skylake_vlu32 a0);
nsimd_avx512_skylake_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_skylake_u16_u16(nsimd_avx512_skylake_vlu16 a0);
nsimd_avx512_skylake_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_skylake_u8_u8(nsimd_avx512_skylake_vlu8 a0);

AARCH64

nsimd_aarch64_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_aarch64_f64_f64(nsimd_aarch64_vlf64 a0);
nsimd_aarch64_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_aarch64_f32_f32(nsimd_aarch64_vlf32 a0);
nsimd_aarch64_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_aarch64_f16_f16(nsimd_aarch64_vlf16 a0);
nsimd_aarch64_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_aarch64_i64_i64(nsimd_aarch64_vli64 a0);
nsimd_aarch64_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_aarch64_i32_i32(nsimd_aarch64_vli32 a0);
nsimd_aarch64_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_aarch64_i16_i16(nsimd_aarch64_vli16 a0);
nsimd_aarch64_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_aarch64_i8_i8(nsimd_aarch64_vli8 a0);
nsimd_aarch64_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_aarch64_u64_u64(nsimd_aarch64_vlu64 a0);
nsimd_aarch64_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_aarch64_u32_u32(nsimd_aarch64_vlu32 a0);
nsimd_aarch64_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_aarch64_u16_u16(nsimd_aarch64_vlu16 a0);
nsimd_aarch64_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_aarch64_u8_u8(nsimd_aarch64_vlu8 a0);

AVX512_KNL

nsimd_avx512_knl_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_knl_f64_f64(nsimd_avx512_knl_vlf64 a0);
nsimd_avx512_knl_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_knl_f32_f32(nsimd_avx512_knl_vlf32 a0);
nsimd_avx512_knl_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_knl_f16_f16(nsimd_avx512_knl_vlf16 a0);
nsimd_avx512_knl_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_knl_i64_i64(nsimd_avx512_knl_vli64 a0);
nsimd_avx512_knl_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_knl_i32_i32(nsimd_avx512_knl_vli32 a0);
nsimd_avx512_knl_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_knl_i16_i16(nsimd_avx512_knl_vli16 a0);
nsimd_avx512_knl_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_knl_i8_i8(nsimd_avx512_knl_vli8 a0);
nsimd_avx512_knl_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_knl_u64_u64(nsimd_avx512_knl_vlu64 a0);
nsimd_avx512_knl_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_knl_u32_u32(nsimd_avx512_knl_vlu32 a0);
nsimd_avx512_knl_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_knl_u16_u16(nsimd_avx512_knl_vlu16 a0);
nsimd_avx512_knl_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_avx512_knl_u8_u8(nsimd_avx512_knl_vlu8 a0);

SSE2

nsimd_sse2_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_sse2_f64_f64(nsimd_sse2_vlf64 a0);
nsimd_sse2_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_sse2_f32_f32(nsimd_sse2_vlf32 a0);
nsimd_sse2_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_sse2_f16_f16(nsimd_sse2_vlf16 a0);
nsimd_sse2_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_sse2_i64_i64(nsimd_sse2_vli64 a0);
nsimd_sse2_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_sse2_i32_i32(nsimd_sse2_vli32 a0);
nsimd_sse2_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_sse2_i16_i16(nsimd_sse2_vli16 a0);
nsimd_sse2_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_sse2_i8_i8(nsimd_sse2_vli8 a0);
nsimd_sse2_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_sse2_u64_u64(nsimd_sse2_vlu64 a0);
nsimd_sse2_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_sse2_u32_u32(nsimd_sse2_vlu32 a0);
nsimd_sse2_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_sse2_u16_u16(nsimd_sse2_vlu16 a0);
nsimd_sse2_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_sse2_u8_u8(nsimd_sse2_vlu8 a0);

SSE42

nsimd_sse42_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_sse42_f64_f64(nsimd_sse42_vlf64 a0);
nsimd_sse42_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_sse42_f32_f32(nsimd_sse42_vlf32 a0);
nsimd_sse42_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_sse42_f16_f16(nsimd_sse42_vlf16 a0);
nsimd_sse42_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_sse42_i64_i64(nsimd_sse42_vli64 a0);
nsimd_sse42_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_sse42_i32_i32(nsimd_sse42_vli32 a0);
nsimd_sse42_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_sse42_i16_i16(nsimd_sse42_vli16 a0);
nsimd_sse42_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_sse42_i8_i8(nsimd_sse42_vli8 a0);
nsimd_sse42_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_sse42_u64_u64(nsimd_sse42_vlu64 a0);
nsimd_sse42_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_sse42_u32_u32(nsimd_sse42_vlu32 a0);
nsimd_sse42_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_sse42_u16_u16(nsimd_sse42_vlu16 a0);
nsimd_sse42_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_sse42_u8_u8(nsimd_sse42_vlu8 a0);

SVE256

nsimd_sve256_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_sve256_f64_f64(nsimd_sve256_vlf64 a0);
nsimd_sve256_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_sve256_f32_f32(nsimd_sve256_vlf32 a0);
nsimd_sve256_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_sve256_f16_f16(nsimd_sve256_vlf16 a0);
nsimd_sve256_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_sve256_i64_i64(nsimd_sve256_vli64 a0);
nsimd_sve256_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_sve256_i32_i32(nsimd_sve256_vli32 a0);
nsimd_sve256_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_sve256_i16_i16(nsimd_sve256_vli16 a0);
nsimd_sve256_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_sve256_i8_i8(nsimd_sve256_vli8 a0);
nsimd_sve256_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_sve256_u64_u64(nsimd_sve256_vlu64 a0);
nsimd_sve256_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_sve256_u32_u32(nsimd_sve256_vlu32 a0);
nsimd_sve256_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_sve256_u16_u16(nsimd_sve256_vlu16 a0);
nsimd_sve256_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_sve256_u8_u8(nsimd_sve256_vlu8 a0);

SVE1024

nsimd_sve1024_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_sve1024_f64_f64(nsimd_sve1024_vlf64 a0);
nsimd_sve1024_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_sve1024_f32_f32(nsimd_sve1024_vlf32 a0);
nsimd_sve1024_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_sve1024_f16_f16(nsimd_sve1024_vlf16 a0);
nsimd_sve1024_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_sve1024_i64_i64(nsimd_sve1024_vli64 a0);
nsimd_sve1024_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_sve1024_i32_i32(nsimd_sve1024_vli32 a0);
nsimd_sve1024_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_sve1024_i16_i16(nsimd_sve1024_vli16 a0);
nsimd_sve1024_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_sve1024_i8_i8(nsimd_sve1024_vli8 a0);
nsimd_sve1024_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_sve1024_u64_u64(nsimd_sve1024_vlu64 a0);
nsimd_sve1024_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_sve1024_u32_u32(nsimd_sve1024_vlu32 a0);
nsimd_sve1024_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_sve1024_u16_u16(nsimd_sve1024_vlu16 a0);
nsimd_sve1024_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_sve1024_u8_u8(nsimd_sve1024_vlu8 a0);

VSX

nsimd_vsx_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_vsx_f64_f64(nsimd_vsx_vlf64 a0);
nsimd_vsx_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_vsx_f32_f32(nsimd_vsx_vlf32 a0);
nsimd_vsx_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_vsx_f16_f16(nsimd_vsx_vlf16 a0);
nsimd_vsx_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_vsx_i64_i64(nsimd_vsx_vli64 a0);
nsimd_vsx_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_vsx_i32_i32(nsimd_vsx_vli32 a0);
nsimd_vsx_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_vsx_i16_i16(nsimd_vsx_vli16 a0);
nsimd_vsx_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_vsx_i8_i8(nsimd_vsx_vli8 a0);
nsimd_vsx_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_vsx_u64_u64(nsimd_vsx_vlu64 a0);
nsimd_vsx_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_vsx_u32_u32(nsimd_vsx_vlu32 a0);
nsimd_vsx_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_vsx_u16_u16(nsimd_vsx_vlu16 a0);
nsimd_vsx_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_vsx_u8_u8(nsimd_vsx_vlu8 a0);

SVE128

nsimd_sve128_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_sve128_f64_f64(nsimd_sve128_vlf64 a0);
nsimd_sve128_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_sve128_f32_f32(nsimd_sve128_vlf32 a0);
nsimd_sve128_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_sve128_f16_f16(nsimd_sve128_vlf16 a0);
nsimd_sve128_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_sve128_i64_i64(nsimd_sve128_vli64 a0);
nsimd_sve128_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_sve128_i32_i32(nsimd_sve128_vli32 a0);
nsimd_sve128_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_sve128_i16_i16(nsimd_sve128_vli16 a0);
nsimd_sve128_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_sve128_i8_i8(nsimd_sve128_vli8 a0);
nsimd_sve128_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_sve128_u64_u64(nsimd_sve128_vlu64 a0);
nsimd_sve128_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_sve128_u32_u32(nsimd_sve128_vlu32 a0);
nsimd_sve128_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_sve128_u16_u16(nsimd_sve128_vlu16 a0);
nsimd_sve128_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_sve128_u8_u8(nsimd_sve128_vlu8 a0);

VMX

nsimd_vmx_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_vmx_f64_f64(nsimd_vmx_vlf64 a0);
nsimd_vmx_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_vmx_f32_f32(nsimd_vmx_vlf32 a0);
nsimd_vmx_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_vmx_f16_f16(nsimd_vmx_vlf16 a0);
nsimd_vmx_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_vmx_i64_i64(nsimd_vmx_vli64 a0);
nsimd_vmx_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_vmx_i32_i32(nsimd_vmx_vli32 a0);
nsimd_vmx_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_vmx_i16_i16(nsimd_vmx_vli16 a0);
nsimd_vmx_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_vmx_i8_i8(nsimd_vmx_vli8 a0);
nsimd_vmx_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_vmx_u64_u64(nsimd_vmx_vlu64 a0);
nsimd_vmx_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_vmx_u32_u32(nsimd_vmx_vlu32 a0);
nsimd_vmx_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_vmx_u16_u16(nsimd_vmx_vlu16 a0);
nsimd_vmx_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_vmx_u8_u8(nsimd_vmx_vlu8 a0);

AVX

nsimd_avx_vlf64 NSIMD_VECTORCALL nsimd_reinterpretl_avx_f64_f64(nsimd_avx_vlf64 a0);
nsimd_avx_vlf32 NSIMD_VECTORCALL nsimd_reinterpretl_avx_f32_f32(nsimd_avx_vlf32 a0);
nsimd_avx_vlf16 NSIMD_VECTORCALL nsimd_reinterpretl_avx_f16_f16(nsimd_avx_vlf16 a0);
nsimd_avx_vli64 NSIMD_VECTORCALL nsimd_reinterpretl_avx_i64_i64(nsimd_avx_vli64 a0);
nsimd_avx_vli32 NSIMD_VECTORCALL nsimd_reinterpretl_avx_i32_i32(nsimd_avx_vli32 a0);
nsimd_avx_vli16 NSIMD_VECTORCALL nsimd_reinterpretl_avx_i16_i16(nsimd_avx_vli16 a0);
nsimd_avx_vli8 NSIMD_VECTORCALL nsimd_reinterpretl_avx_i8_i8(nsimd_avx_vli8 a0);
nsimd_avx_vlu64 NSIMD_VECTORCALL nsimd_reinterpretl_avx_u64_u64(nsimd_avx_vlu64 a0);
nsimd_avx_vlu32 NSIMD_VECTORCALL nsimd_reinterpretl_avx_u32_u32(nsimd_avx_vlu32 a0);
nsimd_avx_vlu16 NSIMD_VECTORCALL nsimd_reinterpretl_avx_u16_u16(nsimd_avx_vlu16 a0);
nsimd_avx_vlu8 NSIMD_VECTORCALL nsimd_reinterpretl_avx_u8_u8(nsimd_avx_vlu8 a0);

C++ base API (architecture specifics)

AVX2

nsimd_avx2_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_avx2_vlf64 a0, f64, f64, avx2);
nsimd_avx2_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_avx2_vlf32 a0, f32, f32, avx2);
nsimd_avx2_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_avx2_vlf16 a0, f16, f16, avx2);
nsimd_avx2_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_avx2_vli64 a0, i64, i64, avx2);
nsimd_avx2_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_avx2_vli32 a0, i32, i32, avx2);
nsimd_avx2_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_avx2_vli16 a0, i16, i16, avx2);
nsimd_avx2_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_avx2_vli8 a0, i8, i8, avx2);
nsimd_avx2_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_avx2_vlu64 a0, u64, u64, avx2);
nsimd_avx2_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_avx2_vlu32 a0, u32, u32, avx2);
nsimd_avx2_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_avx2_vlu16 a0, u16, u16, avx2);
nsimd_avx2_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_avx2_vlu8 a0, u8, u8, avx2);

SVE512

nsimd_sve512_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_sve512_vlf64 a0, f64, f64, sve512);
nsimd_sve512_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_sve512_vlf32 a0, f32, f32, sve512);
nsimd_sve512_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_sve512_vlf16 a0, f16, f16, sve512);
nsimd_sve512_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_sve512_vli64 a0, i64, i64, sve512);
nsimd_sve512_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_sve512_vli32 a0, i32, i32, sve512);
nsimd_sve512_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_sve512_vli16 a0, i16, i16, sve512);
nsimd_sve512_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_sve512_vli8 a0, i8, i8, sve512);
nsimd_sve512_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_sve512_vlu64 a0, u64, u64, sve512);
nsimd_sve512_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_sve512_vlu32 a0, u32, u32, sve512);
nsimd_sve512_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_sve512_vlu16 a0, u16, u16, sve512);
nsimd_sve512_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_sve512_vlu8 a0, u8, u8, sve512);

SVE

nsimd_sve_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_sve_vlf64 a0, f64, f64, sve);
nsimd_sve_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_sve_vlf32 a0, f32, f32, sve);
nsimd_sve_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_sve_vlf16 a0, f16, f16, sve);
nsimd_sve_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_sve_vli64 a0, i64, i64, sve);
nsimd_sve_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_sve_vli32 a0, i32, i32, sve);
nsimd_sve_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_sve_vli16 a0, i16, i16, sve);
nsimd_sve_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_sve_vli8 a0, i8, i8, sve);
nsimd_sve_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_sve_vlu64 a0, u64, u64, sve);
nsimd_sve_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_sve_vlu32 a0, u32, u32, sve);
nsimd_sve_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_sve_vlu16 a0, u16, u16, sve);
nsimd_sve_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_sve_vlu8 a0, u8, u8, sve);

CPU

nsimd_cpu_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_cpu_vlf64 a0, f64, f64, cpu);
nsimd_cpu_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_cpu_vlf32 a0, f32, f32, cpu);
nsimd_cpu_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_cpu_vlf16 a0, f16, f16, cpu);
nsimd_cpu_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_cpu_vli64 a0, i64, i64, cpu);
nsimd_cpu_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_cpu_vli32 a0, i32, i32, cpu);
nsimd_cpu_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_cpu_vli16 a0, i16, i16, cpu);
nsimd_cpu_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_cpu_vli8 a0, i8, i8, cpu);
nsimd_cpu_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_cpu_vlu64 a0, u64, u64, cpu);
nsimd_cpu_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_cpu_vlu32 a0, u32, u32, cpu);
nsimd_cpu_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_cpu_vlu16 a0, u16, u16, cpu);
nsimd_cpu_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_cpu_vlu8 a0, u8, u8, cpu);

SVE2048

nsimd_sve2048_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_sve2048_vlf64 a0, f64, f64, sve2048);
nsimd_sve2048_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_sve2048_vlf32 a0, f32, f32, sve2048);
nsimd_sve2048_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_sve2048_vlf16 a0, f16, f16, sve2048);
nsimd_sve2048_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_sve2048_vli64 a0, i64, i64, sve2048);
nsimd_sve2048_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_sve2048_vli32 a0, i32, i32, sve2048);
nsimd_sve2048_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_sve2048_vli16 a0, i16, i16, sve2048);
nsimd_sve2048_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_sve2048_vli8 a0, i8, i8, sve2048);
nsimd_sve2048_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_sve2048_vlu64 a0, u64, u64, sve2048);
nsimd_sve2048_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_sve2048_vlu32 a0, u32, u32, sve2048);
nsimd_sve2048_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_sve2048_vlu16 a0, u16, u16, sve2048);
nsimd_sve2048_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_sve2048_vlu8 a0, u8, u8, sve2048);

NEON128

nsimd_neon128_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_neon128_vlf64 a0, f64, f64, neon128);
nsimd_neon128_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_neon128_vlf32 a0, f32, f32, neon128);
nsimd_neon128_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_neon128_vlf16 a0, f16, f16, neon128);
nsimd_neon128_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_neon128_vli64 a0, i64, i64, neon128);
nsimd_neon128_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_neon128_vli32 a0, i32, i32, neon128);
nsimd_neon128_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_neon128_vli16 a0, i16, i16, neon128);
nsimd_neon128_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_neon128_vli8 a0, i8, i8, neon128);
nsimd_neon128_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_neon128_vlu64 a0, u64, u64, neon128);
nsimd_neon128_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_neon128_vlu32 a0, u32, u32, neon128);
nsimd_neon128_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_neon128_vlu16 a0, u16, u16, neon128);
nsimd_neon128_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_neon128_vlu8 a0, u8, u8, neon128);

AVX512_SKYLAKE

nsimd_avx512_skylake_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_skylake_vlf64 a0, f64, f64, avx512_skylake);
nsimd_avx512_skylake_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_skylake_vlf32 a0, f32, f32, avx512_skylake);
nsimd_avx512_skylake_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_skylake_vlf16 a0, f16, f16, avx512_skylake);
nsimd_avx512_skylake_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_skylake_vli64 a0, i64, i64, avx512_skylake);
nsimd_avx512_skylake_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_skylake_vli32 a0, i32, i32, avx512_skylake);
nsimd_avx512_skylake_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_skylake_vli16 a0, i16, i16, avx512_skylake);
nsimd_avx512_skylake_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_skylake_vli8 a0, i8, i8, avx512_skylake);
nsimd_avx512_skylake_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_skylake_vlu64 a0, u64, u64, avx512_skylake);
nsimd_avx512_skylake_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_skylake_vlu32 a0, u32, u32, avx512_skylake);
nsimd_avx512_skylake_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_skylake_vlu16 a0, u16, u16, avx512_skylake);
nsimd_avx512_skylake_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_skylake_vlu8 a0, u8, u8, avx512_skylake);

AARCH64

nsimd_aarch64_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_aarch64_vlf64 a0, f64, f64, aarch64);
nsimd_aarch64_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_aarch64_vlf32 a0, f32, f32, aarch64);
nsimd_aarch64_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_aarch64_vlf16 a0, f16, f16, aarch64);
nsimd_aarch64_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_aarch64_vli64 a0, i64, i64, aarch64);
nsimd_aarch64_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_aarch64_vli32 a0, i32, i32, aarch64);
nsimd_aarch64_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_aarch64_vli16 a0, i16, i16, aarch64);
nsimd_aarch64_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_aarch64_vli8 a0, i8, i8, aarch64);
nsimd_aarch64_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_aarch64_vlu64 a0, u64, u64, aarch64);
nsimd_aarch64_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_aarch64_vlu32 a0, u32, u32, aarch64);
nsimd_aarch64_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_aarch64_vlu16 a0, u16, u16, aarch64);
nsimd_aarch64_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_aarch64_vlu8 a0, u8, u8, aarch64);

AVX512_KNL

nsimd_avx512_knl_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_knl_vlf64 a0, f64, f64, avx512_knl);
nsimd_avx512_knl_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_knl_vlf32 a0, f32, f32, avx512_knl);
nsimd_avx512_knl_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_knl_vlf16 a0, f16, f16, avx512_knl);
nsimd_avx512_knl_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_knl_vli64 a0, i64, i64, avx512_knl);
nsimd_avx512_knl_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_knl_vli32 a0, i32, i32, avx512_knl);
nsimd_avx512_knl_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_knl_vli16 a0, i16, i16, avx512_knl);
nsimd_avx512_knl_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_knl_vli8 a0, i8, i8, avx512_knl);
nsimd_avx512_knl_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_knl_vlu64 a0, u64, u64, avx512_knl);
nsimd_avx512_knl_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_knl_vlu32 a0, u32, u32, avx512_knl);
nsimd_avx512_knl_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_knl_vlu16 a0, u16, u16, avx512_knl);
nsimd_avx512_knl_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_avx512_knl_vlu8 a0, u8, u8, avx512_knl);

SSE2

nsimd_sse2_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_sse2_vlf64 a0, f64, f64, sse2);
nsimd_sse2_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_sse2_vlf32 a0, f32, f32, sse2);
nsimd_sse2_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_sse2_vlf16 a0, f16, f16, sse2);
nsimd_sse2_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_sse2_vli64 a0, i64, i64, sse2);
nsimd_sse2_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_sse2_vli32 a0, i32, i32, sse2);
nsimd_sse2_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_sse2_vli16 a0, i16, i16, sse2);
nsimd_sse2_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_sse2_vli8 a0, i8, i8, sse2);
nsimd_sse2_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_sse2_vlu64 a0, u64, u64, sse2);
nsimd_sse2_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_sse2_vlu32 a0, u32, u32, sse2);
nsimd_sse2_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_sse2_vlu16 a0, u16, u16, sse2);
nsimd_sse2_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_sse2_vlu8 a0, u8, u8, sse2);

SSE42

nsimd_sse42_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_sse42_vlf64 a0, f64, f64, sse42);
nsimd_sse42_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_sse42_vlf32 a0, f32, f32, sse42);
nsimd_sse42_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_sse42_vlf16 a0, f16, f16, sse42);
nsimd_sse42_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_sse42_vli64 a0, i64, i64, sse42);
nsimd_sse42_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_sse42_vli32 a0, i32, i32, sse42);
nsimd_sse42_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_sse42_vli16 a0, i16, i16, sse42);
nsimd_sse42_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_sse42_vli8 a0, i8, i8, sse42);
nsimd_sse42_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_sse42_vlu64 a0, u64, u64, sse42);
nsimd_sse42_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_sse42_vlu32 a0, u32, u32, sse42);
nsimd_sse42_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_sse42_vlu16 a0, u16, u16, sse42);
nsimd_sse42_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_sse42_vlu8 a0, u8, u8, sse42);

SVE256

nsimd_sve256_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_sve256_vlf64 a0, f64, f64, sve256);
nsimd_sve256_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_sve256_vlf32 a0, f32, f32, sve256);
nsimd_sve256_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_sve256_vlf16 a0, f16, f16, sve256);
nsimd_sve256_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_sve256_vli64 a0, i64, i64, sve256);
nsimd_sve256_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_sve256_vli32 a0, i32, i32, sve256);
nsimd_sve256_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_sve256_vli16 a0, i16, i16, sve256);
nsimd_sve256_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_sve256_vli8 a0, i8, i8, sve256);
nsimd_sve256_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_sve256_vlu64 a0, u64, u64, sve256);
nsimd_sve256_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_sve256_vlu32 a0, u32, u32, sve256);
nsimd_sve256_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_sve256_vlu16 a0, u16, u16, sve256);
nsimd_sve256_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_sve256_vlu8 a0, u8, u8, sve256);

SVE1024

nsimd_sve1024_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_sve1024_vlf64 a0, f64, f64, sve1024);
nsimd_sve1024_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_sve1024_vlf32 a0, f32, f32, sve1024);
nsimd_sve1024_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_sve1024_vlf16 a0, f16, f16, sve1024);
nsimd_sve1024_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_sve1024_vli64 a0, i64, i64, sve1024);
nsimd_sve1024_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_sve1024_vli32 a0, i32, i32, sve1024);
nsimd_sve1024_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_sve1024_vli16 a0, i16, i16, sve1024);
nsimd_sve1024_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_sve1024_vli8 a0, i8, i8, sve1024);
nsimd_sve1024_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_sve1024_vlu64 a0, u64, u64, sve1024);
nsimd_sve1024_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_sve1024_vlu32 a0, u32, u32, sve1024);
nsimd_sve1024_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_sve1024_vlu16 a0, u16, u16, sve1024);
nsimd_sve1024_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_sve1024_vlu8 a0, u8, u8, sve1024);

VSX

nsimd_vsx_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_vsx_vlf64 a0, f64, f64, vsx);
nsimd_vsx_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_vsx_vlf32 a0, f32, f32, vsx);
nsimd_vsx_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_vsx_vlf16 a0, f16, f16, vsx);
nsimd_vsx_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_vsx_vli64 a0, i64, i64, vsx);
nsimd_vsx_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_vsx_vli32 a0, i32, i32, vsx);
nsimd_vsx_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_vsx_vli16 a0, i16, i16, vsx);
nsimd_vsx_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_vsx_vli8 a0, i8, i8, vsx);
nsimd_vsx_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_vsx_vlu64 a0, u64, u64, vsx);
nsimd_vsx_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_vsx_vlu32 a0, u32, u32, vsx);
nsimd_vsx_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_vsx_vlu16 a0, u16, u16, vsx);
nsimd_vsx_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_vsx_vlu8 a0, u8, u8, vsx);

SVE128

nsimd_sve128_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_sve128_vlf64 a0, f64, f64, sve128);
nsimd_sve128_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_sve128_vlf32 a0, f32, f32, sve128);
nsimd_sve128_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_sve128_vlf16 a0, f16, f16, sve128);
nsimd_sve128_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_sve128_vli64 a0, i64, i64, sve128);
nsimd_sve128_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_sve128_vli32 a0, i32, i32, sve128);
nsimd_sve128_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_sve128_vli16 a0, i16, i16, sve128);
nsimd_sve128_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_sve128_vli8 a0, i8, i8, sve128);
nsimd_sve128_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_sve128_vlu64 a0, u64, u64, sve128);
nsimd_sve128_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_sve128_vlu32 a0, u32, u32, sve128);
nsimd_sve128_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_sve128_vlu16 a0, u16, u16, sve128);
nsimd_sve128_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_sve128_vlu8 a0, u8, u8, sve128);

VMX

nsimd_vmx_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_vmx_vlf64 a0, f64, f64, vmx);
nsimd_vmx_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_vmx_vlf32 a0, f32, f32, vmx);
nsimd_vmx_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_vmx_vlf16 a0, f16, f16, vmx);
nsimd_vmx_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_vmx_vli64 a0, i64, i64, vmx);
nsimd_vmx_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_vmx_vli32 a0, i32, i32, vmx);
nsimd_vmx_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_vmx_vli16 a0, i16, i16, vmx);
nsimd_vmx_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_vmx_vli8 a0, i8, i8, vmx);
nsimd_vmx_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_vmx_vlu64 a0, u64, u64, vmx);
nsimd_vmx_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_vmx_vlu32 a0, u32, u32, vmx);
nsimd_vmx_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_vmx_vlu16 a0, u16, u16, vmx);
nsimd_vmx_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_vmx_vlu8 a0, u8, u8, vmx);

AVX

nsimd_avx_vlf64 NSIMD_VECTORCALL reinterpretl(nsimd_avx_vlf64 a0, f64, f64, avx);
nsimd_avx_vlf32 NSIMD_VECTORCALL reinterpretl(nsimd_avx_vlf32 a0, f32, f32, avx);
nsimd_avx_vlf16 NSIMD_VECTORCALL reinterpretl(nsimd_avx_vlf16 a0, f16, f16, avx);
nsimd_avx_vli64 NSIMD_VECTORCALL reinterpretl(nsimd_avx_vli64 a0, i64, i64, avx);
nsimd_avx_vli32 NSIMD_VECTORCALL reinterpretl(nsimd_avx_vli32 a0, i32, i32, avx);
nsimd_avx_vli16 NSIMD_VECTORCALL reinterpretl(nsimd_avx_vli16 a0, i16, i16, avx);
nsimd_avx_vli8 NSIMD_VECTORCALL reinterpretl(nsimd_avx_vli8 a0, i8, i8, avx);
nsimd_avx_vlu64 NSIMD_VECTORCALL reinterpretl(nsimd_avx_vlu64 a0, u64, u64, avx);
nsimd_avx_vlu32 NSIMD_VECTORCALL reinterpretl(nsimd_avx_vlu32 a0, u32, u32, avx);
nsimd_avx_vlu16 NSIMD_VECTORCALL reinterpretl(nsimd_avx_vlu16 a0, u16, u16, avx);
nsimd_avx_vlu8 NSIMD_VECTORCALL reinterpretl(nsimd_avx_vlu8 a0, u8, u8, avx);