35 #ifndef _BLAZE_SYSTEM_VECTORIZATION_H_ 36 #define _BLAZE_SYSTEM_VECTORIZATION_H_ 123 #if BLAZE_USE_VECTORIZATION && ( defined(__SSE__) || ( _M_IX86_FP > 0 ) ) 124 # define BLAZE_SSE_MODE 1 126 # define BLAZE_SSE_MODE 0 140 #if BLAZE_USE_VECTORIZATION && ( defined(__SSE2__) || ( _M_IX86_FP > 1 ) ) 141 # define BLAZE_SSE2_MODE 1 143 # define BLAZE_SSE2_MODE 0 157 #if BLAZE_USE_VECTORIZATION && defined(__SSE3__) 158 # define BLAZE_SSE3_MODE 1 160 # define BLAZE_SSE3_MODE 0 174 #if BLAZE_USE_VECTORIZATION && defined(__SSSE3__) 175 # define BLAZE_SSSE3_MODE 1 177 # define BLAZE_SSSE3_MODE 0 191 #if BLAZE_USE_VECTORIZATION && ( defined(__SSE4_2__) || defined(__SSE4_1__) ) 192 # define BLAZE_SSE4_MODE 1 194 # define BLAZE_SSE4_MODE 0 208 #if BLAZE_USE_VECTORIZATION && defined(__AVX__) 209 # define BLAZE_AVX_MODE 1 211 # define BLAZE_AVX_MODE 0 225 #if BLAZE_USE_VECTORIZATION && defined(__AVX2__) 226 # define BLAZE_AVX2_MODE 1 228 # define BLAZE_AVX2_MODE 0 243 #if BLAZE_USE_VECTORIZATION && defined(__AVX512F__) 244 # define BLAZE_AVX512F_MODE 1 246 # define BLAZE_AVX512F_MODE 0 261 #if BLAZE_USE_VECTORIZATION && defined(__AVX512BW__) 262 # define BLAZE_AVX512BW_MODE 1 264 # define BLAZE_AVX512BW_MODE 0 279 #if BLAZE_USE_VECTORIZATION && defined(__AVX512DQ__) 280 # define BLAZE_AVX512DQ_MODE 1 282 # define BLAZE_AVX512DQ_MODE 0 296 #if BLAZE_USE_VECTORIZATION && defined(__MIC__) 297 # define BLAZE_MIC_MODE 1 299 # define BLAZE_MIC_MODE 0 321 #if BLAZE_USE_VECTORIZATION && defined(__FMA__) 322 # define BLAZE_FMA_MODE 1 324 # define BLAZE_FMA_MODE 0 346 #if BLAZE_USE_VECTORIZATION && ( defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || defined(__ECC) ) 347 # define BLAZE_SVML_MODE 1 349 # define BLAZE_SVML_MODE 0 389 #if BLAZE_AVX512F_MODE || BLAZE_MIC_MODE || BLAZE_AVX2_MODE || BLAZE_AVX_MODE 390 # include <immintrin.h> 391 #elif BLAZE_SSE4_MODE 392 # include <smmintrin.h> 393 #elif BLAZE_SSSE3_MODE 394 # include <tmmintrin.h> 395 #elif BLAZE_SSE3_MODE 396 # include <pmmintrin.h> 397 #elif BLAZE_SSE2_MODE 398 # include <emmintrin.h> 400 # include <xmmintrin.h> #define BLAZE_AVX512F_MODE
Compilation switch for the AVX512F mode.This compilation switch enables/disables the AVX512F mode...
Definition: Vectorization.h:246
#define BLAZE_AVX512BW_MODE
Compilation switch for the AVX512BW mode.This compilation switch enables/disables the AVX512BW mode...
Definition: Vectorization.h:264
#define BLAZE_AVX2_MODE
Compilation switch for the AVX2 mode.This compilation switch enables/disables the AVX2 mode...
Definition: Vectorization.h:228
#define BLAZE_AVX512DQ_MODE
Compilation switch for the AVX512DQ mode.This compilation switch enables/disables the AVX512DQ mode...
Definition: Vectorization.h:282
#define BLAZE_SSE3_MODE
Compilation switch for the SSE3 mode.This compilation switch enables/disables the SSE3 mode...
Definition: Vectorization.h:160
#define BLAZE_SSSE3_MODE
Compilation switch for the SSSE3 mode.This compilation switch enables/disables the SSSE3 mode...
Definition: Vectorization.h:177
#define BLAZE_SSE_MODE
Compilation switch for the SSE mode.This compilation switch enables/disables the SSE mode...
Definition: Vectorization.h:126
#define BLAZE_SSE4_MODE
Compilation switch for the SSE4 mode.This compilation switch enables/disables the SSE4 mode...
Definition: Vectorization.h:194
#define BLAZE_AVX_MODE
Compilation switch for the AVX mode.This compilation switch enables/disables the AVX mode...
Definition: Vectorization.h:211
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:143
#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