|
| | svec () |
| | Default constructor. More...
|
| |
| | svec (__m128 vv) |
| | For internal use only. More...
|
| |
| | svec (float a, float b, float c, float d) |
| | Constructor. More...
|
| |
| | svec (float a) |
| | Constructor. More...
|
| |
| float & | operator[] (int index) |
| | operator [] to set or get the vector element specified by index. More...
|
| |
| const float | operator[] (int index) const |
| |
| svec< 4,bool > | operator== (svec< 4, float > a) |
| | Element-wise compare equal, return a bool vector, e.g., "a == b" *. More...
|
| |
| svec< 4,bool > | operator!= (svec< 4, float > a) |
| | Element-wise compare not equal, return a bool vector. E.g. "a != b" *. More...
|
| |
| svec< 4,bool > | operator< (svec< 4, float > a) |
| | Element-wise compare less than, return a bool vector. E.g. "a < b" *. More...
|
| |
| svec< 4,bool > | operator<= (svec< 4, float > a) |
| | Element-wise compare less equal, return a bool vector. E.g. "a <= b" *. More...
|
| |
| svec< 4,bool > | operator> (svec< 4, float > a) |
| | Element-wise compare greater than, return a bool vector. E.g. "a > b" *. More...
|
| |
| svec< 4,bool > | operator>= (svec< 4, float > a) |
| | Element-wise compare greater equal, return a bool vector. E.g. "a >= b" *. More...
|
| |
| svec< 4, float > | operator- () |
| | get the neg value, return a VTYPE vector. E.g. "-a" More...
|
| |
| float | reduce_add () |
| | Get the sum of all the element values in the vector. return a float scalar. More...
|
| |
| float | reduce_max () |
| | Get the max value of all the element values in the vector. return a float scalar. More...
|
| |
| float | reduce_min () |
| | Get the min value of all the element values in the vector. return a float scalar. More...
|
| |
| svec< 4, float > | operator+ (svec< 4, float > a) |
| | Add two vectors. More...
|
| |
| svec< 4, float > | operator+ (float s) |
| | Add a vector and a scalar. More...
|
| |
| svec< 4, float > | operator- (svec< 4, float > a) |
| | Sub two vectors. More...
|
| |
| svec< 4, float > | operator- (float s) |
| | Sub a vector and a scalar. More...
|
| |
| svec< 4, float > | operator* (svec< 4, float > a) |
| | Multiply two vectors. More...
|
| |
| svec< 4, float > | operator* (float s) |
| | Multiply a vector and a scalar. More...
|
| |
| svec< 4, float > | operator/ (svec< 4, float > a) |
| | Divide a vector by a vector. More...
|
| |
| svec< 4, float > | operator/ (float s) |
| | Divide a vector by a scalar. More...
|
| |
| void | store (svec< 4, float > *p) |
| | Store the vector to address p. More...
|
| |
| void | masked_store (svec< 4, float > *p, svec< 4, bool > mask) |
| | Store the vector element's value to pointer p if the mask element is true. More...
|
| |
| void | scatter (svec< 4, void * > ptrs, svec< 4, bool > mask) |
| | Scatter the vector's elements to the locations pointed by the vector ptrs if the mask element is true. More...
|
| |
| void | scatter_base_offsets (float *b, uint32_t scale, svec< 4, int32_t > offsets, svec< 4, bool > mask) |
| | Scatter the vector's elements to the addresses ((char*)b + scale * offsets) if the mask element is true. More...
|
| |
| void | scatter_base_offsets (float *b, uint32_t scale, svec< 4, int64_t > offsets, svec< 4, bool > mask) |
| | Scatter the vector's elements to the addresses ((char*)b + scale * offsets) if the mask element is true. More...
|
| |
| void | scatter_stride (float *b, int32_t off, int32_t stride) |
| | Scatter the vector's elements to the addresses (b+off, b++off+stride, b+off+2*stride, b+off+3*step). More...
|
| |
| void | scatter_stride (float *b, int64_t off, int64_t stride) |
| | Scatter the vector's elements to the addresses (b+off, b++off+stride, b+off+2*stride, b+off+3*step). More...
|
| |
| svec< 4, float > | broadcast (int32_t index) |
| | Return a new vector by setting all the elements of the new vector with this vector's index element. More...
|
| |
| svec< 4, float > | rotate (int32_t index) |
| | Return a new vector by rotate this vector's elements. e.g. newVec[i] = thisVec[i+index]. More...
|
| |
| svec< 4, float > | shuffle (svec< 4, int32_t > index) |
| | Return a new vector by shuffle this vector's elements with index vector e.g. newVec[i] = thisVec[index[i]]. More...
|
| |
| svec< 4, float > | abs () |
| | Return a new vector of the vector's abs value. More...
|
| |
| svec< 4, float > | round () |
| | return the round VTYPE vector. More...
|
| |
| svec< 4, float > | floor () |
| | return the floor VTYPE vector. More...
|
| |
| svec< 4, float > | ceil () |
| | return the ceil VTYPE vector. More...
|
| |
| svec< 4, float > | sqrt () |
| | return the sqrt VTYPE vector. More...
|
| |
| svec< 4, float > | rcp () |
| | return the reverse VTYPE vector. (1.0/thisVec) More...
|
| |
| svec< 4, float > | rsqrt () |
| | return the reverse sqrt VTYPE vector. ( 1.0/sqrt(thisVec) ) More...
|
| |
| svec< 4, float > | exp () |
| | return the exp VTYPE vector. More...
|
| |
| svec< 4, float > | log () |
| | return the log VTYPE vector. More...
|
| |
| svec< 4, float > | pow (svec< 4, float > a) |
| | return the pow VTYPE vector. More...
|
| |
|
| static svec< 4, float > | load (svec< 4, float > *p) |
| | load the vector from the pointer p More...
|
| |
| static svec< 4, float > | masked_load (svec< 4, float > *p, svec< 4, bool > mask) |
| | Return a new vector by only loading the value from the pointer p if the mask element is true. More...
|
| |
| static svec< 4, float > | load_const (const float *p) |
| | Construct a vector by loading a scalar value from pointer p, and splat it to all the elements in the vector. More...
|
| |
| static svec< 4, float > | load_and_splat (float *p) |
| | Construct a vector by loading a scalar value from pointer p, and splat it to all the elements in the vector. More...
|
| |
| static svec< 4, float > | gather (svec< 4, void * > ptrs, svec< 4, bool > mask) |
| | Gather the elements pointed by the vector ptrs if the mask element is true, and return a vector. More...
|
| |
| static svec< 4, float > | gather_base_offsets (float *b, uint32_t scale, svec< 4, int32_t > offsets, svec< 4, bool > mask) |
| | Gather the elements pointed by calculating the addresses ((char*)b + scale * offsets) if the mask element is true, and return a vector. More...
|
| |
| static svec< 4, float > | gather_base_offsets (float *b, uint32_t scale, svec< 4, int64_t > offsets, svec< 4, bool > mask) |
| | Gather the elements pointed by calculating the addresses ((char*)b + scale * offsets) if the mask element is true, and return a vector. More...
|
| |
| static svec< 4, float > | gather_stride (float *b, int32_t off, int32_t stride) |
| | Gather the elements pointed by (b+off, b++off+stride, b+off+2*stride, b+off+3*step). More...
|
| |
| static svec< 4, float > | gather_stride (float *b, int64_t off, int64_t stride) |
| | Gather the elements pointed by (b+off, b++off+stride, b+off+2*stride, b+off+3*step). More...
|
| |
template<>
struct sse::svec< 4, float >
data representation and operations on a vector of 4 float.