Blaze 3.9
blaze::IsVectorizable< T > Struct Template Reference

Compile time check for vectorizable types. More...

#include <IsVectorizable.h>

Inherits blaze::IntegralConstant< T, N >.

Detailed Description

template<typename T>
struct blaze::IsVectorizable< T >

Compile time check for vectorizable types.

Depending on the available instruction set (SSE, SSE2, SSE3, SSE4, AVX, AVX2, MIC, ...), this type trait tests whether or not the given template parameter is a vectorizable type, i.e. a type for which intrinsic vector operations and optimizations can be used. Currently, all built-in data types except bool and the according complex numbers are considered to be vectorizable types. In case the type is vectorizable, the value member constant is set to true, the nested type definition Type is TrueType, and the class derives from TrueType. Otherwise value is set to false, Type is FalseType, and the class derives from FalseType.

blaze::IsVectorizable< volatile double > // Is derived from TrueType
blaze::IsVectorizable< void >::value // Evaluates to 'false'
blaze::IsVectorizable< volatile MyClass > // Is derived from FalseType
Compile time check for vectorizable types.
Definition: IsVectorizable.h:139

The documentation for this struct was generated from the following file: