|
Generic SIMD Intrinsic Library API
0.6
|
SIMD LANES=4 interfaces implemented by scalar The source file is organized as follows I. all types definition, with class function incorporated II. data operation interfaces. More...
#include "gsimd_utility.h"Go to the source code of this file.
Classes | |
| struct | generic::svec< 4, bool > |
| Data representation and operations on a vector of 4 boolean values. This is used in predicated vector operations. Specifically the ith value of svec<4,bool> indicates whether the ith lane of a predicated vector operation is enabled or not. More... | |
| struct | generic::svec< 4, bool >::Helper |
| A special helper class to support customized subscript[] operations. More... | |
| struct | generic::svec< 4, int8_t > |
| data representation and operations on a vector of 4 signed chars. More... | |
| struct | generic::svec< 4, uint8_t > |
| data representation and operations on a vector of 4 unsigned chars. More... | |
| struct | generic::svec< 4, int16_t > |
| data representation and operations on a vector of 4 signed short. More... | |
| struct | generic::svec< 4, uint16_t > |
| data representation and operations on a vector of 4 unsigned short. More... | |
| struct | generic::svec< 4, int32_t > |
| data representation and operations on a vector of 4 signed int. More... | |
| struct | generic::svec< 4, uint32_t > |
| data representation and operations on a vector of 4 unsigned int. More... | |
| struct | generic::svec< 4, int64_t > |
| data representation and operations on a vector of 4 signed 64-bit int. More... | |
| struct | generic::svec< 4, uint64_t > |
| data representation and operations on a vector of 4 unsigned 64-bit int. More... | |
| struct | generic::svec< 4, float > |
| data representation and operations on a vector of 4 float. More... | |
| struct | generic::svec< 4, double > |
| data representation and operations on a vector of 4 double. More... | |
| struct | generic::svec< 4, void * > |
| data representation and operations on a vector of 4 pointers. This is only used in gather and scatter. More... | |
Namespaces | |
| generic | |
| : Generic SIMD Library header configuration file for generic implementation The common defintions for all generic implementations | |
Macros | |
| #define | LANES 4 |
| #define | BINARY_OP_METHODS(STYPE) |
| #define | INT_BINARY_OP_METHODS(STYPE) |
| #define | MAX_MIN_REDUCE_METHODS(STYPE) |
Functions | |
| svec< 4, bool > | generic::svec_select (bool cond, svec< 4, bool > a, svec< 4, bool > b) |
| Select two TYPE vectors by a bool scalar. The same as cond ? a: b. More... | |
| svec< 4, int8_t > | generic::svec_select (bool cond, svec< 4, int8_t > a, svec< 4, int8_t > b) |
| Select two TYPE vectors by a bool scalar. The same as cond ? a: b. More... | |
| svec< 4, uint8_t > | generic::svec_select (bool cond, svec< 4, uint8_t > a, svec< 4, uint8_t > b) |
| Select two TYPE vectors by a bool scalar. The same as cond ? a: b. More... | |
| svec< 4, int16_t > | generic::svec_select (bool cond, svec< 4, int16_t > a, svec< 4, int16_t > b) |
| Select two TYPE vectors by a bool scalar. The same as cond ? a: b. More... | |
| svec< 4, uint16_t > | generic::svec_select (bool cond, svec< 4, uint16_t > a, svec< 4, uint16_t > b) |
| Select two TYPE vectors by a bool scalar. The same as cond ? a: b. More... | |
| svec< 4, int32_t > | generic::svec_select (bool cond, svec< 4, int32_t > a, svec< 4, int32_t > b) |
| Select two TYPE vectors by a bool scalar. The same as cond ? a: b. More... | |
| svec< 4, uint32_t > | generic::svec_select (bool cond, svec< 4, uint32_t > a, svec< 4, uint32_t > b) |
| Select two TYPE vectors by a bool scalar. The same as cond ? a: b. More... | |
| svec< 4, int64_t > | generic::svec_select (bool cond, svec< 4, int64_t > a, svec< 4, int64_t > b) |
| Select two TYPE vectors by a bool scalar. The same as cond ? a: b. More... | |
| svec< 4, uint64_t > | generic::svec_select (bool cond, svec< 4, uint64_t > a, svec< 4, uint64_t > b) |
| Select two TYPE vectors by a bool scalar. The same as cond ? a: b. More... | |
| svec< 4, float > | generic::svec_select (bool cond, svec< 4, float > a, svec< 4, float > b) |
| Select two TYPE vectors by a bool scalar. The same as cond ? a: b. More... | |
| svec< 4, double > | generic::svec_select (bool cond, svec< 4, double > a, svec< 4, double > b) |
| Select two TYPE vectors by a bool scalar. The same as cond ? a: b. More... | |
| template<> | |
| svec< 4, int8_t > | generic::svec_load_const< svec< 4, int8_t > > (const int8_t *p) |
| template<> | |
| svec< 4, int8_t > | generic::svec_load_and_splat< svec< 4, int8_t > > (int8_t *p) |
| template<> | |
| svec< 4, uint8_t > | generic::svec_load_const< svec< 4, uint8_t > > (const uint8_t *p) |
| template<> | |
| svec< 4, uint8_t > | generic::svec_load_and_splat< svec< 4, uint8_t > > (uint8_t *p) |
| template<> | |
| svec< 4, int16_t > | generic::svec_load_const< svec< 4, int16_t > > (const int16_t *p) |
| template<> | |
| svec< 4, int16_t > | generic::svec_load_and_splat< svec< 4, int16_t > > (int16_t *p) |
| template<> | |
| svec< 4, uint16_t > | generic::svec_load_const< svec< 4, uint16_t > > (const uint16_t *p) |
| template<> | |
| svec< 4, uint16_t > | generic::svec_load_and_splat< svec< 4, uint16_t > > (uint16_t *p) |
| template<> | |
| svec< 4, int32_t > | generic::svec_load_const< svec< 4, int32_t > > (const int32_t *p) |
| template<> | |
| svec< 4, int32_t > | generic::svec_load_and_splat< svec< 4, int32_t > > (int32_t *p) |
| template<> | |
| svec< 4, uint32_t > | generic::svec_load_const< svec< 4, uint32_t > > (const uint32_t *p) |
| template<> | |
| svec< 4, uint32_t > | generic::svec_load_and_splat< svec< 4, uint32_t > > (uint32_t *p) |
| template<> | |
| svec< 4, int64_t > | generic::svec_load_const< svec< 4, int64_t > > (const int64_t *p) |
| template<> | |
| svec< 4, int64_t > | generic::svec_load_and_splat< svec< 4, int64_t > > (int64_t *p) |
| template<> | |
| svec< 4, uint64_t > | generic::svec_load_const< svec< 4, uint64_t > > (const uint64_t *p) |
| template<> | |
| svec< 4, uint64_t > | generic::svec_load_and_splat< svec< 4, uint64_t > > (uint64_t *p) |
| template<> | |
| svec< 4, float > | generic::svec_load_const< svec< 4, float > > (const float *p) |
| template<> | |
| svec< 4, float > | generic::svec_load_and_splat< svec< 4, float > > (float *p) |
| template<> | |
| svec< 4, double > | generic::svec_load_const< svec< 4, double > > (const double *p) |
| template<> | |
| svec< 4, double > | generic::svec_load_and_splat< svec< 4, double > > (double *p) |
| svec< 4, int32_t > | generic::svec_madd (svec< 4, int32_t > a, svec< 4, int32_t > b, svec< 4, int32_t > c) |
| vector multiply and add operation. return a * b + c. More... | |
| svec< 4, int32_t > | generic::svec_msub (svec< 4, int32_t > a, svec< 4, int32_t > b, svec< 4, int32_t > c) |
| vector multiply and add operation. return a * b - c. More... | |
| svec< 4, int32_t > | generic::svec_nmsub (svec< 4, int32_t > a, svec< 4, int32_t > b, svec< 4, int32_t > c) |
| vector multiply and add operation. return -( a * b - c ). More... | |
| svec< 4, uint32_t > | generic::svec_madd (svec< 4, uint32_t > a, svec< 4, uint32_t > b, svec< 4, uint32_t > c) |
| vector multiply and add operation. return a * b + c. More... | |
| svec< 4, uint32_t > | generic::svec_msub (svec< 4, uint32_t > a, svec< 4, uint32_t > b, svec< 4, uint32_t > c) |
| vector multiply and add operation. return a * b - c. More... | |
| svec< 4, uint32_t > | generic::svec_nmsub (svec< 4, uint32_t > a, svec< 4, uint32_t > b, svec< 4, uint32_t > c) |
| vector multiply and add operation. return -( a * b - c ). More... | |
| svec< 4, int64_t > | generic::svec_madd (svec< 4, int64_t > a, svec< 4, int64_t > b, svec< 4, int64_t > c) |
| vector multiply and add operation. return a * b + c. More... | |
| svec< 4, int64_t > | generic::svec_msub (svec< 4, int64_t > a, svec< 4, int64_t > b, svec< 4, int64_t > c) |
| vector multiply and add operation. return a * b - c. More... | |
| svec< 4, int64_t > | generic::svec_nmsub (svec< 4, int64_t > a, svec< 4, int64_t > b, svec< 4, int64_t > c) |
| vector multiply and add operation. return -( a * b - c ). More... | |
| svec< 4, uint64_t > | generic::svec_madd (svec< 4, uint64_t > a, svec< 4, uint64_t > b, svec< 4, uint64_t > c) |
| vector multiply and add operation. return a * b + c. More... | |
| svec< 4, uint64_t > | generic::svec_msub (svec< 4, uint64_t > a, svec< 4, uint64_t > b, svec< 4, uint64_t > c) |
| vector multiply and add operation. return a * b - c. More... | |
| svec< 4, uint64_t > | generic::svec_nmsub (svec< 4, uint64_t > a, svec< 4, uint64_t > b, svec< 4, uint64_t > c) |
| vector multiply and add operation. return -( a * b - c ). More... | |
| svec< 4, float > | generic::svec_madd (svec< 4, float > a, svec< 4, float > b, svec< 4, float > c) |
| vector multiply and add operation. return a * b + c. More... | |
| svec< 4, float > | generic::svec_msub (svec< 4, float > a, svec< 4, float > b, svec< 4, float > c) |
| vector multiply and add operation. return a * b - c. More... | |
| svec< 4, float > | generic::svec_nmsub (svec< 4, float > a, svec< 4, float > b, svec< 4, float > c) |
| vector multiply and add operation. return -( a * b - c ). More... | |
| svec< 4, double > | generic::svec_madd (svec< 4, double > a, svec< 4, double > b, svec< 4, double > c) |
| vector multiply and add operation. return a * b + c. More... | |
| svec< 4, double > | generic::svec_msub (svec< 4, double > a, svec< 4, double > b, svec< 4, double > c) |
| vector multiply and add operation. return a * b - c. More... | |
| svec< 4, double > | generic::svec_nmsub (svec< 4, double > a, svec< 4, double > b, svec< 4, double > c) |
| vector multiply and add operation. return -( a * b - c ). More... | |
| svec< 4,float > | generic::svec_preduce_add (svec< 4, float > v0, svec< 4, float > v1, svec< 4, float > v2, svec< 4, float > v3) |
| svec< 4,double > | generic::svec_preduce_add (svec< 4, double > v0, svec< 4, double > v1, svec< 4, double > v2, svec< 4, double > v3) |
| svec< 4,bool > | generic::svec_masked_equal (svec< 4, int8_t > a, svec< 4, int8_t > b, svec< 4, bool > mask) |
| Do equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_not_equal (svec< 4, int8_t > a, svec< 4, int8_t > b, svec< 4, bool > mask) |
| Do not_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_than (svec< 4, int8_t > a, svec< 4, int8_t > b, svec< 4, bool > mask) |
| Do less_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_equal (svec< 4, int8_t > a, svec< 4, int8_t > b, svec< 4, bool > mask) |
| Do less_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_than (svec< 4, int8_t > a, svec< 4, int8_t > b, svec< 4, bool > mask) |
| Do greater_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_equal (svec< 4, int8_t > a, svec< 4, int8_t > b, svec< 4, bool > mask) |
| Do greater_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_equal (svec< 4, uint8_t > a, svec< 4, uint8_t > b, svec< 4, bool > mask) |
| Do equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_not_equal (svec< 4, uint8_t > a, svec< 4, uint8_t > b, svec< 4, bool > mask) |
| Do not_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_than (svec< 4, uint8_t > a, svec< 4, uint8_t > b, svec< 4, bool > mask) |
| Do less_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_equal (svec< 4, uint8_t > a, svec< 4, uint8_t > b, svec< 4, bool > mask) |
| Do less_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_than (svec< 4, uint8_t > a, svec< 4, uint8_t > b, svec< 4, bool > mask) |
| Do greater_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_equal (svec< 4, uint8_t > a, svec< 4, uint8_t > b, svec< 4, bool > mask) |
| Do greater_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_equal (svec< 4, int16_t > a, svec< 4, int16_t > b, svec< 4, bool > mask) |
| Do equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_not_equal (svec< 4, int16_t > a, svec< 4, int16_t > b, svec< 4, bool > mask) |
| Do not_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_than (svec< 4, int16_t > a, svec< 4, int16_t > b, svec< 4, bool > mask) |
| Do less_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_equal (svec< 4, int16_t > a, svec< 4, int16_t > b, svec< 4, bool > mask) |
| Do less_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_than (svec< 4, int16_t > a, svec< 4, int16_t > b, svec< 4, bool > mask) |
| Do greater_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_equal (svec< 4, int16_t > a, svec< 4, int16_t > b, svec< 4, bool > mask) |
| Do greater_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_equal (svec< 4, uint16_t > a, svec< 4, uint16_t > b, svec< 4, bool > mask) |
| Do equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_not_equal (svec< 4, uint16_t > a, svec< 4, uint16_t > b, svec< 4, bool > mask) |
| Do not_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_than (svec< 4, uint16_t > a, svec< 4, uint16_t > b, svec< 4, bool > mask) |
| Do less_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_equal (svec< 4, uint16_t > a, svec< 4, uint16_t > b, svec< 4, bool > mask) |
| Do less_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_than (svec< 4, uint16_t > a, svec< 4, uint16_t > b, svec< 4, bool > mask) |
| Do greater_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_equal (svec< 4, uint16_t > a, svec< 4, uint16_t > b, svec< 4, bool > mask) |
| Do greater_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_equal (svec< 4, int32_t > a, svec< 4, int32_t > b, svec< 4, bool > mask) |
| Do equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_not_equal (svec< 4, int32_t > a, svec< 4, int32_t > b, svec< 4, bool > mask) |
| Do not_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_than (svec< 4, int32_t > a, svec< 4, int32_t > b, svec< 4, bool > mask) |
| Do less_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_equal (svec< 4, int32_t > a, svec< 4, int32_t > b, svec< 4, bool > mask) |
| Do less_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_than (svec< 4, int32_t > a, svec< 4, int32_t > b, svec< 4, bool > mask) |
| Do greater_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_equal (svec< 4, int32_t > a, svec< 4, int32_t > b, svec< 4, bool > mask) |
| Do greater_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_equal (svec< 4, uint32_t > a, svec< 4, uint32_t > b, svec< 4, bool > mask) |
| Do equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_not_equal (svec< 4, uint32_t > a, svec< 4, uint32_t > b, svec< 4, bool > mask) |
| Do not_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_than (svec< 4, uint32_t > a, svec< 4, uint32_t > b, svec< 4, bool > mask) |
| Do less_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_equal (svec< 4, uint32_t > a, svec< 4, uint32_t > b, svec< 4, bool > mask) |
| Do less_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_than (svec< 4, uint32_t > a, svec< 4, uint32_t > b, svec< 4, bool > mask) |
| Do greater_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_equal (svec< 4, uint32_t > a, svec< 4, uint32_t > b, svec< 4, bool > mask) |
| Do greater_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_equal (svec< 4, int64_t > a, svec< 4, int64_t > b, svec< 4, bool > mask) |
| Do equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_not_equal (svec< 4, int64_t > a, svec< 4, int64_t > b, svec< 4, bool > mask) |
| Do not_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_than (svec< 4, int64_t > a, svec< 4, int64_t > b, svec< 4, bool > mask) |
| Do less_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_equal (svec< 4, int64_t > a, svec< 4, int64_t > b, svec< 4, bool > mask) |
| Do less_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_than (svec< 4, int64_t > a, svec< 4, int64_t > b, svec< 4, bool > mask) |
| Do greater_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_equal (svec< 4, int64_t > a, svec< 4, int64_t > b, svec< 4, bool > mask) |
| Do greater_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_equal (svec< 4, uint64_t > a, svec< 4, uint64_t > b, svec< 4, bool > mask) |
| Do equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_not_equal (svec< 4, uint64_t > a, svec< 4, uint64_t > b, svec< 4, bool > mask) |
| Do not_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_than (svec< 4, uint64_t > a, svec< 4, uint64_t > b, svec< 4, bool > mask) |
| Do less_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_equal (svec< 4, uint64_t > a, svec< 4, uint64_t > b, svec< 4, bool > mask) |
| Do less_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_than (svec< 4, uint64_t > a, svec< 4, uint64_t > b, svec< 4, bool > mask) |
| Do greater_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_equal (svec< 4, uint64_t > a, svec< 4, uint64_t > b, svec< 4, bool > mask) |
| Do greater_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_equal (svec< 4, float > a, svec< 4, float > b, svec< 4, bool > mask) |
| Do equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_not_equal (svec< 4, float > a, svec< 4, float > b, svec< 4, bool > mask) |
| Do not_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_than (svec< 4, float > a, svec< 4, float > b, svec< 4, bool > mask) |
| Do less_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_equal (svec< 4, float > a, svec< 4, float > b, svec< 4, bool > mask) |
| Do less_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_than (svec< 4, float > a, svec< 4, float > b, svec< 4, bool > mask) |
| Do greater_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_equal (svec< 4, float > a, svec< 4, float > b, svec< 4, bool > mask) |
| Do greater_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_equal (svec< 4, double > a, svec< 4, double > b, svec< 4, bool > mask) |
| Do equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_not_equal (svec< 4, double > a, svec< 4, double > b, svec< 4, bool > mask) |
| Do not_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_than (svec< 4, double > a, svec< 4, double > b, svec< 4, bool > mask) |
| Do less_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_less_equal (svec< 4, double > a, svec< 4, double > b, svec< 4, bool > mask) |
| Do less_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_than (svec< 4, double > a, svec< 4, double > b, svec< 4, bool > mask) |
| Do greater_than operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| svec< 4,bool > | generic::svec_masked_greater_equal (svec< 4, double > a, svec< 4, double > b, svec< 4, bool > mask) |
| Do greater_equal operation on a and b with mask * If mask is true, return the compare result, otherwise return false. More... | |
| template<> | |
| svec< 4, int8_t > | generic::svec_cast< svec< 4, int8_t > > (svec< 4, bool > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint8_t > | generic::svec_cast< svec< 4, uint8_t > > (svec< 4, bool > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int16_t > | generic::svec_cast< svec< 4, int16_t > > (svec< 4, bool > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint16_t > | generic::svec_cast< svec< 4, uint16_t > > (svec< 4, bool > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int32_t > | generic::svec_cast< svec< 4, int32_t > > (svec< 4, bool > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint32_t > | generic::svec_cast< svec< 4, uint32_t > > (svec< 4, bool > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int64_t > | generic::svec_cast< svec< 4, int64_t > > (svec< 4, bool > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint64_t > | generic::svec_cast< svec< 4, uint64_t > > (svec< 4, bool > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, float > | generic::svec_cast< svec< 4, float > > (svec< 4, bool > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, double > | generic::svec_cast< svec< 4, double > > (svec< 4, bool > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, bool > | generic::svec_cast< svec< 4, bool > > (svec< 4, int8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint8_t > | generic::svec_cast< svec< 4, uint8_t > > (svec< 4, int8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int16_t > | generic::svec_cast< svec< 4, int16_t > > (svec< 4, int8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint16_t > | generic::svec_cast< svec< 4, uint16_t > > (svec< 4, int8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int32_t > | generic::svec_cast< svec< 4, int32_t > > (svec< 4, int8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint32_t > | generic::svec_cast< svec< 4, uint32_t > > (svec< 4, int8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int64_t > | generic::svec_cast< svec< 4, int64_t > > (svec< 4, int8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint64_t > | generic::svec_cast< svec< 4, uint64_t > > (svec< 4, int8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, float > | generic::svec_cast< svec< 4, float > > (svec< 4, int8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, double > | generic::svec_cast< svec< 4, double > > (svec< 4, int8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, bool > | generic::svec_cast< svec< 4, bool > > (svec< 4, uint8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int8_t > | generic::svec_cast< svec< 4, int8_t > > (svec< 4, uint8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int16_t > | generic::svec_cast< svec< 4, int16_t > > (svec< 4, uint8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint16_t > | generic::svec_cast< svec< 4, uint16_t > > (svec< 4, uint8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int32_t > | generic::svec_cast< svec< 4, int32_t > > (svec< 4, uint8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint32_t > | generic::svec_cast< svec< 4, uint32_t > > (svec< 4, uint8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int64_t > | generic::svec_cast< svec< 4, int64_t > > (svec< 4, uint8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint64_t > | generic::svec_cast< svec< 4, uint64_t > > (svec< 4, uint8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, float > | generic::svec_cast< svec< 4, float > > (svec< 4, uint8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, double > | generic::svec_cast< svec< 4, double > > (svec< 4, uint8_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, bool > | generic::svec_cast< svec< 4, bool > > (svec< 4, int16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int8_t > | generic::svec_cast< svec< 4, int8_t > > (svec< 4, int16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint8_t > | generic::svec_cast< svec< 4, uint8_t > > (svec< 4, int16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint16_t > | generic::svec_cast< svec< 4, uint16_t > > (svec< 4, int16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int32_t > | generic::svec_cast< svec< 4, int32_t > > (svec< 4, int16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint32_t > | generic::svec_cast< svec< 4, uint32_t > > (svec< 4, int16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int64_t > | generic::svec_cast< svec< 4, int64_t > > (svec< 4, int16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint64_t > | generic::svec_cast< svec< 4, uint64_t > > (svec< 4, int16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, float > | generic::svec_cast< svec< 4, float > > (svec< 4, int16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, double > | generic::svec_cast< svec< 4, double > > (svec< 4, int16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, bool > | generic::svec_cast< svec< 4, bool > > (svec< 4, uint16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int8_t > | generic::svec_cast< svec< 4, int8_t > > (svec< 4, uint16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint8_t > | generic::svec_cast< svec< 4, uint8_t > > (svec< 4, uint16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int16_t > | generic::svec_cast< svec< 4, int16_t > > (svec< 4, uint16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int32_t > | generic::svec_cast< svec< 4, int32_t > > (svec< 4, uint16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint32_t > | generic::svec_cast< svec< 4, uint32_t > > (svec< 4, uint16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int64_t > | generic::svec_cast< svec< 4, int64_t > > (svec< 4, uint16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint64_t > | generic::svec_cast< svec< 4, uint64_t > > (svec< 4, uint16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, float > | generic::svec_cast< svec< 4, float > > (svec< 4, uint16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, double > | generic::svec_cast< svec< 4, double > > (svec< 4, uint16_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, bool > | generic::svec_cast< svec< 4, bool > > (svec< 4, int32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int8_t > | generic::svec_cast< svec< 4, int8_t > > (svec< 4, int32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint8_t > | generic::svec_cast< svec< 4, uint8_t > > (svec< 4, int32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int16_t > | generic::svec_cast< svec< 4, int16_t > > (svec< 4, int32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint16_t > | generic::svec_cast< svec< 4, uint16_t > > (svec< 4, int32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint32_t > | generic::svec_cast< svec< 4, uint32_t > > (svec< 4, int32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int64_t > | generic::svec_cast< svec< 4, int64_t > > (svec< 4, int32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint64_t > | generic::svec_cast< svec< 4, uint64_t > > (svec< 4, int32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, float > | generic::svec_cast< svec< 4, float > > (svec< 4, int32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, double > | generic::svec_cast< svec< 4, double > > (svec< 4, int32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, bool > | generic::svec_cast< svec< 4, bool > > (svec< 4, uint32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int8_t > | generic::svec_cast< svec< 4, int8_t > > (svec< 4, uint32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint8_t > | generic::svec_cast< svec< 4, uint8_t > > (svec< 4, uint32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int16_t > | generic::svec_cast< svec< 4, int16_t > > (svec< 4, uint32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint16_t > | generic::svec_cast< svec< 4, uint16_t > > (svec< 4, uint32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int32_t > | generic::svec_cast< svec< 4, int32_t > > (svec< 4, uint32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int64_t > | generic::svec_cast< svec< 4, int64_t > > (svec< 4, uint32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint64_t > | generic::svec_cast< svec< 4, uint64_t > > (svec< 4, uint32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, float > | generic::svec_cast< svec< 4, float > > (svec< 4, uint32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, double > | generic::svec_cast< svec< 4, double > > (svec< 4, uint32_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, bool > | generic::svec_cast< svec< 4, bool > > (svec< 4, int64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int8_t > | generic::svec_cast< svec< 4, int8_t > > (svec< 4, int64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint8_t > | generic::svec_cast< svec< 4, uint8_t > > (svec< 4, int64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int16_t > | generic::svec_cast< svec< 4, int16_t > > (svec< 4, int64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint16_t > | generic::svec_cast< svec< 4, uint16_t > > (svec< 4, int64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int32_t > | generic::svec_cast< svec< 4, int32_t > > (svec< 4, int64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint32_t > | generic::svec_cast< svec< 4, uint32_t > > (svec< 4, int64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint64_t > | generic::svec_cast< svec< 4, uint64_t > > (svec< 4, int64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, float > | generic::svec_cast< svec< 4, float > > (svec< 4, int64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, double > | generic::svec_cast< svec< 4, double > > (svec< 4, int64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, bool > | generic::svec_cast< svec< 4, bool > > (svec< 4, uint64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int8_t > | generic::svec_cast< svec< 4, int8_t > > (svec< 4, uint64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint8_t > | generic::svec_cast< svec< 4, uint8_t > > (svec< 4, uint64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int16_t > | generic::svec_cast< svec< 4, int16_t > > (svec< 4, uint64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint16_t > | generic::svec_cast< svec< 4, uint16_t > > (svec< 4, uint64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int32_t > | generic::svec_cast< svec< 4, int32_t > > (svec< 4, uint64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint32_t > | generic::svec_cast< svec< 4, uint32_t > > (svec< 4, uint64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int64_t > | generic::svec_cast< svec< 4, int64_t > > (svec< 4, uint64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, float > | generic::svec_cast< svec< 4, float > > (svec< 4, uint64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, double > | generic::svec_cast< svec< 4, double > > (svec< 4, uint64_t > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, bool > | generic::svec_cast< svec< 4, bool > > (svec< 4, float > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int8_t > | generic::svec_cast< svec< 4, int8_t > > (svec< 4, float > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint8_t > | generic::svec_cast< svec< 4, uint8_t > > (svec< 4, float > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int16_t > | generic::svec_cast< svec< 4, int16_t > > (svec< 4, float > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint16_t > | generic::svec_cast< svec< 4, uint16_t > > (svec< 4, float > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int32_t > | generic::svec_cast< svec< 4, int32_t > > (svec< 4, float > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint32_t > | generic::svec_cast< svec< 4, uint32_t > > (svec< 4, float > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int64_t > | generic::svec_cast< svec< 4, int64_t > > (svec< 4, float > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint64_t > | generic::svec_cast< svec< 4, uint64_t > > (svec< 4, float > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, double > | generic::svec_cast< svec< 4, double > > (svec< 4, float > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, bool > | generic::svec_cast< svec< 4, bool > > (svec< 4, double > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int8_t > | generic::svec_cast< svec< 4, int8_t > > (svec< 4, double > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint8_t > | generic::svec_cast< svec< 4, uint8_t > > (svec< 4, double > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int16_t > | generic::svec_cast< svec< 4, int16_t > > (svec< 4, double > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint16_t > | generic::svec_cast< svec< 4, uint16_t > > (svec< 4, double > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int32_t > | generic::svec_cast< svec< 4, int32_t > > (svec< 4, double > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint32_t > | generic::svec_cast< svec< 4, uint32_t > > (svec< 4, double > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, int64_t > | generic::svec_cast< svec< 4, int64_t > > (svec< 4, double > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, uint64_t > | generic::svec_cast< svec< 4, uint64_t > > (svec< 4, double > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, float > | generic::svec_cast< svec< 4, float > > (svec< 4, double > val) |
| cast val from FROM type to TO type. More... | |
| template<> | |
| svec< 4, float > | generic::svec_cast_bits< svec< 4, float > > (svec< 4, int32_t > val) |
| template<> | |
| svec< 4, float > | generic::svec_cast_bits< svec< 4, float > > (svec< 4, uint32_t > val) |
| template<> | |
| svec< 4, int32_t > | generic::svec_cast_bits< svec< 4, int32_t > > (svec< 4, float > val) |
| template<> | |
| svec< 4, uint32_t > | generic::svec_cast_bits< svec< 4, uint32_t > > (svec< 4, float > val) |
| template<> | |
| svec< 4, double > | generic::svec_cast_bits< svec< 4, double > > (svec< 4, int64_t > val) |
| template<> | |
| svec< 4, double > | generic::svec_cast_bits< svec< 4, double > > (svec< 4, uint64_t > val) |
| template<> | |
| svec< 4, int64_t > | generic::svec_cast_bits< svec< 4, int64_t > > (svec< 4, double > val) |
| template<> | |
| svec< 4, uint64_t > | generic::svec_cast_bits< svec< 4, uint64_t > > (svec< 4, double > val) |
| svec< 4, int8_t > | generic::operator+ (int8_t s, svec< 4, int8_t > a) |
| Add a scalar and a vector. More... | |
| svec< 4, int8_t > | generic::operator- (int8_t s, svec< 4, int8_t > a) |
| Sub a scalar and a vector. More... | |
| svec< 4, int8_t > | generic::operator* (int8_t s, svec< 4, int8_t > a) |
| Multiply a scalar and a vector. More... | |
| svec< 4, int8_t > | generic::operator/ (int8_t s, svec< 4, int8_t > a) |
| Divide a scalar by a vector. More... | |
| svec< 4, uint8_t > | generic::operator+ (uint8_t s, svec< 4, uint8_t > a) |
| Add a scalar and a vector. More... | |
| svec< 4, uint8_t > | generic::operator- (uint8_t s, svec< 4, uint8_t > a) |
| Sub a scalar and a vector. More... | |
| svec< 4, uint8_t > | generic::operator* (uint8_t s, svec< 4, uint8_t > a) |
| Multiply a scalar and a vector. More... | |
| svec< 4, uint8_t > | generic::operator/ (uint8_t s, svec< 4, uint8_t > a) |
| Divide a scalar by a vector. More... | |
| svec< 4, int16_t > | generic::operator+ (int16_t s, svec< 4, int16_t > a) |
| Add a scalar and a vector. More... | |
| svec< 4, int16_t > | generic::operator- (int16_t s, svec< 4, int16_t > a) |
| Sub a scalar and a vector. More... | |
| svec< 4, int16_t > | generic::operator* (int16_t s, svec< 4, int16_t > a) |
| Multiply a scalar and a vector. More... | |
| svec< 4, int16_t > | generic::operator/ (int16_t s, svec< 4, int16_t > a) |
| Divide a scalar by a vector. More... | |
| svec< 4, uint16_t > | generic::operator+ (uint16_t s, svec< 4, uint16_t > a) |
| Add a scalar and a vector. More... | |
| svec< 4, uint16_t > | generic::operator- (uint16_t s, svec< 4, uint16_t > a) |
| Sub a scalar and a vector. More... | |
| svec< 4, uint16_t > | generic::operator* (uint16_t s, svec< 4, uint16_t > a) |
| Multiply a scalar and a vector. More... | |
| svec< 4, uint16_t > | generic::operator/ (uint16_t s, svec< 4, uint16_t > a) |
| Divide a scalar by a vector. More... | |
| svec< 4, int32_t > | generic::operator+ (int32_t s, svec< 4, int32_t > a) |
| Add a scalar and a vector. More... | |
| svec< 4, int32_t > | generic::operator- (int32_t s, svec< 4, int32_t > a) |
| Sub a scalar and a vector. More... | |
| svec< 4, int32_t > | generic::operator* (int32_t s, svec< 4, int32_t > a) |
| Multiply a scalar and a vector. More... | |
| svec< 4, int32_t > | generic::operator/ (int32_t s, svec< 4, int32_t > a) |
| Divide a scalar by a vector. More... | |
| svec< 4, uint32_t > | generic::operator+ (uint32_t s, svec< 4, uint32_t > a) |
| Add a scalar and a vector. More... | |
| svec< 4, uint32_t > | generic::operator- (uint32_t s, svec< 4, uint32_t > a) |
| Sub a scalar and a vector. More... | |
| svec< 4, uint32_t > | generic::operator* (uint32_t s, svec< 4, uint32_t > a) |
| Multiply a scalar and a vector. More... | |
| svec< 4, uint32_t > | generic::operator/ (uint32_t s, svec< 4, uint32_t > a) |
| Divide a scalar by a vector. More... | |
| svec< 4, int64_t > | generic::operator+ (int64_t s, svec< 4, int64_t > a) |
| Add a scalar and a vector. More... | |
| svec< 4, int64_t > | generic::operator- (int64_t s, svec< 4, int64_t > a) |
| Sub a scalar and a vector. More... | |
| svec< 4, int64_t > | generic::operator* (int64_t s, svec< 4, int64_t > a) |
| Multiply a scalar and a vector. More... | |
| svec< 4, int64_t > | generic::operator/ (int64_t s, svec< 4, int64_t > a) |
| Divide a scalar by a vector. More... | |
| svec< 4, uint64_t > | generic::operator+ (uint64_t s, svec< 4, uint64_t > a) |
| Add a scalar and a vector. More... | |
| svec< 4, uint64_t > | generic::operator- (uint64_t s, svec< 4, uint64_t > a) |
| Sub a scalar and a vector. More... | |
| svec< 4, uint64_t > | generic::operator* (uint64_t s, svec< 4, uint64_t > a) |
| Multiply a scalar and a vector. More... | |
| svec< 4, uint64_t > | generic::operator/ (uint64_t s, svec< 4, uint64_t > a) |
| Divide a scalar by a vector. More... | |
| svec< 4, float > | generic::operator+ (float s, svec< 4, float > a) |
| Add a scalar and a vector. More... | |
| svec< 4, float > | generic::operator- (float s, svec< 4, float > a) |
| Sub a scalar and a vector. More... | |
| svec< 4, float > | generic::operator* (float s, svec< 4, float > a) |
| Multiply a scalar and a vector. More... | |
| svec< 4, float > | generic::operator/ (float s, svec< 4, float > a) |
| Divide a scalar by a vector. More... | |
| svec< 4, double > | generic::operator+ (double s, svec< 4, double > a) |
| Add a scalar and a vector. More... | |
| svec< 4, double > | generic::operator- (double s, svec< 4, double > a) |
| Sub a scalar and a vector. More... | |
| svec< 4, double > | generic::operator* (double s, svec< 4, double > a) |
| Multiply a scalar and a vector. More... | |
| svec< 4, double > | generic::operator/ (double s, svec< 4, double > a) |
| Divide a scalar by a vector. More... | |
SIMD LANES=4 interfaces implemented by scalar The source file is organized as follows I. all types definition, with class function incorporated II. data operation interfaces.
Copyright 2012 the Generic SIMD Intrinsic Library project authors. All rights reserved.
Copyright IBM Corp. 2013, 2013. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of IBM Corp. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The original source code covered by the above license above has been modified significantly by IBM Corp. Copyright 2013 the Generic SIMD Intrinsic Library project authors. All rights reserved.
Copyright (c) 2010-2012, Intel Corporation All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of Intel Corporation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The current implementation requires gcc to compile. Reasons 1) In order to implement the splat interface efficiently, the code uses gcc built-in function __builtin_constant_p(exp).
| #define BINARY_OP_METHODS | ( | STYPE | ) |
| #define INT_BINARY_OP_METHODS | ( | STYPE | ) |
| #define LANES 4 |
| #define MAX_MIN_REDUCE_METHODS | ( | STYPE | ) |
1.8.5