35 #ifndef _BLAZE_SYSTEM_VECTORIZATION_H_ 36 #define _BLAZE_SYSTEM_VECTORIZATION_H_ 57 #ifdef BLAZE_ENFORCE_AVX2 58 # ifndef BLAZE_ENFORCE_AVX 59 # define BLAZE_ENFORCE_AVX 79 #ifdef BLAZE_ENFORCE_AVX 126 #if BLAZE_USE_VECTORIZATION && ( defined(__SSE__) || ( _M_IX86_FP > 0 ) ) 127 # define BLAZE_SSE_MODE 1 129 # define BLAZE_SSE_MODE 0 143 #if BLAZE_USE_VECTORIZATION && ( defined(__SSE2__) || ( _M_IX86_FP > 1 ) ) 144 # define BLAZE_SSE2_MODE 1 146 # define BLAZE_SSE2_MODE 0 160 #if BLAZE_USE_VECTORIZATION && defined(__SSE3__) 161 # define BLAZE_SSE3_MODE 1 163 # define BLAZE_SSE3_MODE 0 177 #if BLAZE_USE_VECTORIZATION && defined(__SSSE3__) 178 # define BLAZE_SSSE3_MODE 1 180 # define BLAZE_SSSE3_MODE 0 194 #if BLAZE_USE_VECTORIZATION && ( defined(__SSE4_2__) || defined(__SSE4_1__) ) 195 # define BLAZE_SSE4_MODE 1 197 # define BLAZE_SSE4_MODE 0 211 #if BLAZE_USE_VECTORIZATION && defined(__AVX__) 212 # define BLAZE_AVX_MODE 1 214 # define BLAZE_AVX_MODE 0 228 #if BLAZE_USE_VECTORIZATION && defined(__AVX2__) 229 # define BLAZE_AVX2_MODE 1 231 # define BLAZE_AVX2_MODE 0 245 #if BLAZE_USE_VECTORIZATION && defined(__MIC__) 246 # define BLAZE_MIC_MODE 1 248 # define BLAZE_MIC_MODE 0 270 #if BLAZE_USE_VECTORIZATION && defined(__FMA__) 271 # define BLAZE_FMA_MODE 1 273 # define BLAZE_FMA_MODE 0 295 #if BLAZE_USE_VECTORIZATION && ( defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || defined(__ECC) ) 296 # define BLAZE_SVML_MODE 1 298 # define BLAZE_SVML_MODE 0 335 #if BLAZE_MIC_MODE || BLAZE_AVX_MODE || BLAZE_AVX2_MODE 336 # include <immintrin.h> 337 #elif BLAZE_SSE4_MODE 338 # include <smmintrin.h> 339 #elif BLAZE_SSSE3_MODE 340 # include <tmmintrin.h> 341 #elif BLAZE_SSE3_MODE 342 # include <pmmintrin.h> 343 #elif BLAZE_SSE2_MODE 344 # include <emmintrin.h> 346 # include <xmmintrin.h> #define BLAZE_AVX2_MODE
Compilation switch for the AVX2 mode.This compilation switch enables/disables the AVX2 mode...
Definition: Vectorization.h:231
#define BLAZE_SSE3_MODE
Compilation switch for the SSE3 mode.This compilation switch enables/disables the SSE3 mode...
Definition: Vectorization.h:163
#define BLAZE_SSSE3_MODE
Compilation switch for the SSSE3 mode.This compilation switch enables/disables the SSSE3 mode...
Definition: Vectorization.h:180
#define BLAZE_SSE_MODE
Compilation switch for the SSE mode.This compilation switch enables/disables the SSE mode...
Definition: Vectorization.h:129
#define BLAZE_SSE4_MODE
Compilation switch for the SSE4 mode.This compilation switch enables/disables the SSE4 mode...
Definition: Vectorization.h:197
#define BLAZE_AVX_MODE
Compilation switch for the AVX mode.This compilation switch enables/disables the AVX mode...
Definition: Vectorization.h:214
Configuration of the vectorization policy of the Blaze library.
#define BLAZE_SSE2_MODE
Compilation switch for the SSE2 mode.This compilation switch enables/disables the SSE2 mode...
Definition: Vectorization.h:146
#define BLAZE_STATIC_ASSERT(expr)
Compile time assertion macro.In case of an invalid compile time expression, a compilation error is cr...
Definition: StaticAssert.h:112