2,4 or 8 dimension float or double parameters accepted. Uses SSE2 or AVX acceleration if enabled in the compiler.
More...
|
static Simd | mul (const Simd &lhs, const Simd &rhs) |
|
static Simd | div (const Simd &lhs, const Simd &rhs) |
|
static Simd | add (const Simd &lhs, const Simd &rhs) |
|
static Simd | sub (const Simd &lhs, const Simd &rhs) |
|
static Simd | mul (const Simd &lhs, T rhs) |
|
static Simd | div (const Simd &lhs, T rhs) |
|
static Simd | add (const Simd &lhs, T rhs) |
|
static Simd | sub (const Simd &lhs, T rhs) |
|
static Simd | mad (const Simd &a, const Simd &b, const Simd &c) |
|
static Simd | spread (T value) |
|
template<class... Args> |
static Simd | set (Args... args) |
|
template<int Count = Dim> |
static T | dot (const Simd &lhs, const Simd &rhs) |
|
template<int i0, int i1> |
static Simd | shuffle (Simd arg) |
|
template<int i0, int i1, int i2, int i3> |
static Simd | shuffle (Simd arg) |
|
template<int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7> |
static Simd | shuffle (Simd arg) |
|
template<class T, int Dim>
union mathter::Simd< T, Dim >
2,4 or 8 dimension float or double parameters accepted. Uses SSE2 or AVX acceleration if enabled in the compiler.
template<class T, int Dim>
template<int i0, int i1, int i2, int i3, int i4, int i5, int i6, int i7>