]> git.ipfire.org Git - thirdparty/vectorscan.git/commitdiff
add global definitions for CHUNKSIZE/VECTORSIZE, define HAVE_AVX512* only when BUILD_...
authorKonstantinos Margaritis <konstantinos@vectorcamp.gr>
Wed, 12 May 2021 10:26:42 +0000 (13:26 +0300)
committerKonstantinos Margaritis <konstantinos@vectorcamp.gr>
Tue, 12 Oct 2021 08:51:33 +0000 (11:51 +0300)
src/util/arch/x86/x86.h

index dae08149b3084cd8ad9c00269fde42c0e2ae4786..3c909f89c73234be890b46762b0800190fc70c55 100644 (file)
 #define HAVE_SIMD_256_BITS
 #endif
 
-#if defined(__AVX512BW__)
+#if defined(__AVX512BW__) && defined(BUILD_AVX512)
 #define HAVE_AVX512
 #define HAVE_SIMD_512_BITS
 #endif
 
-#if defined(__AVX512VBMI__)
+#if defined(__AVX512VBMI__) && defined(BUILD_AVX512)
 #define HAVE_AVX512VBMI
 #endif
 
+#if defined(HAVE_SIMD_512_BITS)
+#define CHUNKSIZE 512
+#define VECTORSIZE 64
+#elif defined(HAVE_SIMD_256_BITS)
+#define CHUNKSIZE 256
+#define VECTORSIZE 32
+#elif defined(HAVE_SIMD_128_BITS)
+#define CHUNKSIZE 128
+#define VECTORSIZE 16
+#endif
+
 /*
  * ICC and MSVC don't break out POPCNT or BMI/2 as separate pre-def macros
  */