|
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 |
1.8.11