batmat main
Batched linear algebra routines
Loading...
Searching...
No Matches
simd.hpp File Reference
#include <batmat/config.hpp>
#include <batmat/unroll.h>
#include <experimental/simd>
#include <cstddef>

Go to the source code of this file.

Namespaces

namespace  batmat
namespace  batmat::datapar

Macros

#define BATMAT_HAVE_SIMD_TO_INTRIN   1

Typedefs

template<class Tp, class Abi>
using batmat::datapar::simd = stdx::simd<Tp, Abi>
template<class Tp, std::size_t Np>
using batmat::datapar::deduced_abi = stdx::simd_abi::deduce_t<Tp, Np>
template<class Tp, std::size_t Np>
using batmat::datapar::deduced_simd = simd<Tp, deduced_abi<Tp, Np>>
template<class Tp, class Abi>
using batmat::datapar::simd_size = stdx::simd_size<Tp, Abi>
template<class Tp, class Abi>
using batmat::datapar::simd_align = stdx::memory_alignment<simd<Tp, Abi>>
template<class T, class V>
using batmat::datapar::rebind_simd_t = stdx::rebind_simd_t<T, V>
template<class Tp>
using batmat::datapar::scalar_abi = deduced_abi<Tp, 1>

Functions

template<class V>
batmat::datapar::unaligned_load (const typename V::value_type *p)
template<class V>
batmat::datapar::aligned_load (const typename V::value_type *p)
template<class V>
void batmat::datapar::unaligned_store (V v, typename V::value_type *p)
template<class V>
void batmat::datapar::aligned_store (V v, typename V::value_type *p)
template<class V>
void batmat::datapar::masked_aligned_store (V v, typename V::mask_type m, typename V::value_type *p)
template<class V>
auto batmat::datapar::to_intrin (V v)
template<class V>
constexpr V batmat::datapar::from_values (auto... values)

Macro Definition Documentation

◆ BATMAT_HAVE_SIMD_TO_INTRIN

#define BATMAT_HAVE_SIMD_TO_INTRIN   1

Definition at line 134 of file simd.hpp.