![]() |
Classes | |
class | blaze::IntrinsicTrait< T > |
Intrinsic characteristics of data types.The IntrinsicTrait class template provides the intrinsic characteristics of a specific data type: More... | |
class | blaze::AlignedStorage< T > |
POD data type with a fixed alignment.The AlignedStorage class template represents a POD data type with a fixed alignment. Via this class it is possible to enforce a specific, type-based alignment for static data types. The required alignment is evaluated based on the given data type T. In case T is a built-in, vectorizable data type, AlignedStorage enforces an alignment of 16 or 32 bytes, depending on the active SSE/AVX level. In all other cases, no specific alignment is enforced. More... | |
class | blaze::sse_int8_t |
Intrinsic type for 8-bit integral data values. More... | |
class | blaze::sse_int16_t |
Intrinsic type for 16-bit integral data values. More... | |
class | blaze::sse_int32_t |
Intrinsic type for 32-bit integral data values. More... | |
class | blaze::sse_int64_t |
Intrinsic type for 64-bit integral data values. More... | |
class | blaze::sse_float_t |
Intrinsic type for 32-bit single precision floating point data values. More... | |
class | blaze::sse_double_t |
Intrinsic type for 64-bit double precision floating point data values. More... | |
class | blaze::sse_cfloat_t |
Intrinsic type for 32-bit single precision complex values. More... | |
class | blaze::sse_cdouble_t |
Intrinsic type for 64-bit double precision complex values. More... | |
Typedefs | |
typedef IntrinsicTrait< short > ::Type | blaze::sse_short_t |
The intrinsic data type for 'short'. | |
typedef IntrinsicTrait < unsigned short >::Type | blaze::sse_ushort_t |
The intrinsic data type for 'unsigned short'. | |
typedef IntrinsicTrait< int >::Type | blaze::sse_int_t |
The intrinsic data type for 'int'. | |
typedef IntrinsicTrait < unsigned int >::Type | blaze::sse_uint_t |
The intrinsic data type for 'unsigned int'. | |
typedef IntrinsicTrait< long > ::Type | blaze::sse_long_t |
The intrinsic data type for 'long int'. | |
typedef IntrinsicTrait < unsigned long >::Type | blaze::sse_ulong_t |
The intrinsic data type for 'unsigned long int'. | |
Functions | |
template<typename T > | |
EnableIf< IsIntegral< T > , Load< T, sizeof(T)> >::Type::Type | blaze::load (const T *address) |
Loads a vector of integral values. More... | |
sse_float_t | blaze::load (const float *address) |
Loads a vector of 'float' values. More... | |
sse_double_t | blaze::load (const double *address) |
Loads a vector of 'double' values. More... | |
sse_cfloat_t | blaze::load (const complex< float > *address) |
Loads a vector of 'complex<float>' values. More... | |
sse_cdouble_t | blaze::load (const complex< double > *address) |
Loads a vector of 'complex<double>' values. More... | |
int16_t | blaze::sum (const sse_int16_t &a) |
Returns the sum of all elements in the 16-bit integral intrinsic vector. More... | |
int32_t | blaze::sum (const sse_int32_t &a) |
Returns the sum of all elements in the 32-bit integral intrinsic vector. More... | |
float | blaze::sum (const sse_float_t &a) |
Returns the sum of all elements in the single precision floating point intrinsic vector. More... | |
double | blaze::sum (const sse_double_t &a) |
Returns the sum of all elements in the double precision floating point intrinsic vector. More... | |
complex< float > | blaze::sum (const sse_cfloat_t &a) |
Returns the sum of all elements in the single precision complex intrinsic vector. More... | |
complex< double > | blaze::sum (const sse_cdouble_t &a) |
Returns the sum of all elements in the double precision complex intrinsic vector. More... | |
template<typename T > | |
EnableIf< IsIntegral< T >, Set < T, sizeof(T)> >::Type::Type | blaze::set (T value) |
Sets all values in the vector to the given integral value. More... | |
sse_float_t | blaze::set (float value) |
Sets all values in the vector to the given 'float' value. More... | |
sse_double_t | blaze::set (double value) |
Sets all values in the vector to the given 'double' value. More... | |
sse_cfloat_t | blaze::set (const complex< float > &value) |
Sets all values in the vector to the given 'complex<float>' value. More... | |
sse_cdouble_t | blaze::set (const complex< double > &value) |
Sets all values in the vector to the given 'complex<double>' value. More... | |
void | blaze::setzero (sse_int8_t &value) |
Setting an integral intrinsic type with 16 8-bit data values to zero. More... | |
void | blaze::setzero (sse_int16_t &value) |
Setting an integral intrinsic type with 8 16-bit data values to zero. More... | |
void | blaze::setzero (sse_int32_t &value) |
Setting an integral intrinsic type with 4 32-bit data values to zero. More... | |
void | blaze::setzero (sse_int64_t &value) |
Setting an integral intrinsic type with 2 64-bit data values to zero. More... | |
void | blaze::setzero (sse_float_t &value) |
Setting a floating point intrinsic type with 4 32-bit single precision data values to zero. More... | |
void | blaze::setzero (sse_double_t &value) |
Setting a floating point intrinsic type with 4 32-bit double precision data values to zero. More... | |
void | blaze::setzero (sse_cfloat_t &value) |
Setting a floating point intrinsic type with 4 32-bit single precision complex values to zero. More... | |
void | blaze::setzero (sse_cdouble_t &value) |
Setting a floating point intrinsic type with 4 32-bit double precision complex values to zero. More... | |
template<typename T > | |
EnableIf< IsIntegral< T > >::Type | blaze::store (T *address, const typename Store< T, sizeof(T)>::Type &value) |
Aligned store of a vector of integral values. More... | |
void | blaze::store (float *address, const sse_float_t &value) |
Aligned store of a vector of 'float' values. More... | |
void | blaze::store (double *address, const sse_double_t &value) |
Aligned store of a vector of 'double' values. More... | |
void | blaze::store (complex< float > *address, const sse_cfloat_t &value) |
Aligned store of a vector of 'complex<float>' values. More... | |
void | blaze::store (complex< double > *address, const sse_cdouble_t &value) |
Aligned store of a vector of 'complex<double>' values. More... | |
template<typename T > | |
EnableIf< IsIntegral< T > >::Type | blaze::stream (T *address, const typename Stream< T, sizeof(T)>::Type &value) |
Aligned, non-temporal store of a vector of integral values. More... | |
void | blaze::stream (float *address, const sse_float_t &value) |
Aligned, non-temporal store of a vector of 'float' values. More... | |
void | blaze::stream (double *address, const sse_double_t &value) |
Aligned, non-temporal store of a vector of 'double' values. More... | |
void | blaze::stream (complex< float > *address, const sse_cfloat_t &value) |
Aligned, non-temporal store of a vector of 'complex<float>' values. More... | |
void | blaze::stream (complex< double > *address, const sse_cdouble_t &value) |
Aligned, non-temporal store of a vector of 'complex<double>' values. More... | |
|
inline |
Loads a vector of integral values.
address | The first integral value to be loaded. |
|
inline |
Loads a vector of 'float' values.
address | The first 'float' value to be loaded. |
|
inline |
Loads a vector of 'double' values.
address | The first 'double' value to be loaded. |
|
inline |
Loads a vector of 'complex<float>' values.
address | The first 'complex<float>' value to be loaded. |
|
inline |
Loads a vector of 'complex<double>' values.
address | The first 'complex<double>' value to be loaded. |
|
inline |
Sets all values in the vector to the given integral value.
value | The given integral value. |
|
inline |
Sets all values in the vector to the given 'float' value.
value | The given 'float' value. |
|
inline |
Sets all values in the vector to the given 'double' value.
value | The given 'double' value. |
|
inline |
Sets all values in the vector to the given 'complex<float>' value.
value | The given 'complex<float>' value. |
|
inline |
Sets all values in the vector to the given 'complex<double>' value.
value | The given 'complex<double>' value. |
|
inline |
Setting an integral intrinsic type with 16 8-bit data values to zero.
value | The value to be set to zero. |
|
inline |
Setting an integral intrinsic type with 8 16-bit data values to zero.
value | The value to be set to zero. |
|
inline |
Setting an integral intrinsic type with 4 32-bit data values to zero.
value | The value to be set to zero. |
|
inline |
Setting an integral intrinsic type with 2 64-bit data values to zero.
value | The value to be set to zero. |
|
inline |
Setting a floating point intrinsic type with 4 32-bit single precision data values to zero.
value | The value to be set to zero. |
|
inline |
Setting a floating point intrinsic type with 4 32-bit double precision data values to zero.
value | The value to be set to zero. |
|
inline |
Setting a floating point intrinsic type with 4 32-bit single precision complex values to zero.
value | The value to be set to zero. |
|
inline |
Setting a floating point intrinsic type with 4 32-bit double precision complex values to zero.
value | The value to be set to zero. |
|
inline |
Aligned store of a vector of integral values.
address | The target address. |
value | The integral vector to be stored. |
|
inline |
Aligned store of a vector of 'float' values.
address | The target address. |
value | The 'float' vector to be stored. |
|
inline |
Aligned store of a vector of 'double' values.
address | The target address. |
value | The 'double' vector to be stored. |
|
inline |
Aligned store of a vector of 'complex<float>' values.
address | The target address. |
value | The 'complex<float>' vector to be stored. |
|
inline |
Aligned store of a vector of 'complex<double>' values.
address | The target address. |
value | The 'complex<double>' vector to be stored. |
|
inline |
Aligned, non-temporal store of a vector of integral values.
address | The target address. |
value | The integral vector to be streamed. |
|
inline |
Aligned, non-temporal store of a vector of 'float' values.
address | The target address. |
value | The 'float' vector to be streamed. |
|
inline |
Aligned, non-temporal store of a vector of 'double' values.
address | The target address. |
value | The 'double' vector to be streamed. |
|
inline |
Aligned, non-temporal store of a vector of 'complex<float>' values.
address | The target address. |
value | The 'complex<float>' vector to be streamed. |
|
inline |
Aligned, non-temporal store of a vector of 'complex<double>' values.
address | The target address. |
value | The 'complex<double>' vector to be streamed. |
|
inline |
Returns the sum of all elements in the 16-bit integral intrinsic vector.
a | The vector to be sumed up. |
|
inline |
Returns the sum of all elements in the 32-bit integral intrinsic vector.
a | The vector to be sumed up. |
|
inline |
Returns the sum of all elements in the single precision floating point intrinsic vector.
a | The vector to be sumed up. |
|
inline |
Returns the sum of all elements in the double precision floating point intrinsic vector.
a | The vector to be sumed up. |
|
inline |
Returns the sum of all elements in the single precision complex intrinsic vector.
a | The vector to be sumed up. |
|
inline |
Returns the sum of all elements in the double precision complex intrinsic vector.
a | The vector to be sumed up. |