vSMC
vSMC: Scalable Monte Carlo
|
Using __mm256i
as integer vector.
More...
#include <vsmc/utility/simd.hpp>
Public Types | |
using | value_type = IntType |
Public Member Functions | |
M256I ()=default | |
M256I (const __m256i &value) | |
template<typename T > | |
M256I (const M256I< T > &other) | |
__m256i * | data () |
const __m256i * | data () const |
template<typename T > | |
void | load (const T *mem) |
template<typename T > | |
void | load_a (const T *mem) |
template<typename T > | |
void | load_u (const T *mem) |
template<typename T > | |
M256I< IntType > & | operator= (const M256I< T > &other) |
template<typename T > | |
void | set (T e3, T e2, T e1, T e0) |
template<typename T > | |
void | set (T e7, T e6, T e5, T e4, T e3, T e2, T e1, T e0) |
template<typename T > | |
void | set (T e15, T e14, T e13, T e12, T e11, T e10, T e9, T e8, T e7, T e6, T e5, T e4, T e3, T e2, T e1, T e0) |
template<typename T > | |
void | set (T e31, T e30, T e29, T e28, T e27, T e26, T e25, T e24, T e23, T e22, T e21, T e20, T e19, T e18, T e17, T e16, T e15, T e14, T e13, T e12, T e11, T e10, T e9, T e8, T e7, T e6, T e5, T e4, T e3, T e2, T e1, T e0) |
void | set0 () |
template<typename T > | |
void | set1 (T n) |
template<typename T > | |
void | store (T *mem) const |
template<typename T > | |
void | store_a (T *mem) const |
template<typename T > | |
void | store_u (T *mem) const |
__m256i & | value () |
const __m256i & | value () const |
Static Public Member Functions | |
static constexpr std::size_t | size () |
Using __mm256i
as integer vector.
using vsmc::M256I< IntType >::value_type = IntType |
|
default |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinestatic |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |