|
| template<typename T , size_t SIMD_WIDTH> |
| static Vec< T, SIMD_WIDTH > | simd::absDiff (const Vec< T, SIMD_WIDTH > &v1, const Vec< T, SIMD_WIDTH > &v2) |
| | Computes the absolute difference of the elements of two Vec's.
|
| |
| template<typename T , size_t SIMD_WIDTH> |
| static Vec< T, SIMD_WIDTH > | simd::add (const Vec< T, SIMD_WIDTH > &a, const Vec< T, SIMD_WIDTH > &b) |
| | Adds the elements of two Vec's.
|
| |
| template<typename T , size_t SIMD_WIDTH> |
| static Vec< T, SIMD_WIDTH > | simd::adds (const Vec< T, SIMD_WIDTH > &a, const Vec< T, SIMD_WIDTH > &b) |
| | Adds the elements of two Vec's using saturated arithmetic.
|
| |
| template<typename T , size_t SIMD_WIDTH> |
| static Vec< T, SIMD_WIDTH > | simd::avg (const Vec< T, SIMD_WIDTH > &a, const Vec< T, SIMD_WIDTH > &b) |
| | Computes the average of the elements of two Vec's, rounded up.
|
| |
| template<typename T , size_t SIMD_WIDTH> |
| static Vec< T, SIMD_WIDTH > | simd::avgrd (const Vec< T, SIMD_WIDTH > &a, const Vec< T, SIMD_WIDTH > &b) |
| | Computes the average of the elements of two Vecs, rounding down.
|
| |
| template<typename T , size_t SIMD_WIDTH> |
| static Vec< T, SIMD_WIDTH > | simd::avgru (const Vec< T, SIMD_WIDTH > &a, const Vec< T, SIMD_WIDTH > &b) |
| | Computes the average of the elements of two Vec's, rounded up.
|
| |
| template<typename T , size_t SIMD_WIDTH> |
| static Vec< T, SIMD_WIDTH > | simd::div (const Vec< T, SIMD_WIDTH > &a, const Vec< T, SIMD_WIDTH > &b) |
| | Divides the elements of two Vec's.
|
| |
| template<typename T , size_t SIMD_WIDTH> |
| static Vec< T, SIMD_WIDTH > | simd::div2r0 (const Vec< T, SIMD_WIDTH > &a) |
| | Divides all elements of a Vec by 2 and rounds the result to 0.
|
| |
| template<typename T , size_t SIMD_WIDTH> |
| static Vec< T, SIMD_WIDTH > | simd::div2rd (const Vec< T, SIMD_WIDTH > &a) |
| | Divides all elements of a Vec by 2 and rounds down the result.
|
| |
| template<typename T , size_t SIMD_WIDTH> |
| static Vec< T, SIMD_WIDTH > | simd::mul (const Vec< T, SIMD_WIDTH > &a, const Vec< T, SIMD_WIDTH > &b) |
| | Multiplies the elements of two Vec's.
|
| |
| template<typename T , size_t SIMD_WIDTH> |
| static Vec< T, SIMD_WIDTH > | simd::sign (const Vec< T, SIMD_WIDTH > &a, const Vec< T, SIMD_WIDTH > &b) |
| | Negates the elements of a Vec of floating-point numbers where the corresponding element of a second Vec of floating-point numbers is negative.
|
| |
| template<typename T , size_t SIMD_WIDTH> |
| static Vec< T, SIMD_WIDTH > | simd::sub (const Vec< T, SIMD_WIDTH > &a, const Vec< T, SIMD_WIDTH > &b) |
| | Subtracts the elements of two Vec's.
|
| |
| template<typename T , size_t SIMD_WIDTH> |
| static Vec< T, SIMD_WIDTH > | simd::subs (const Vec< T, SIMD_WIDTH > &a, const Vec< T, SIMD_WIDTH > &b) |
| | Subtracts the elements of two Vec's using saturated arithmetic.
|
| |