Move STATIC_BMI2 block as-is to portability_macros.h

This commit is contained in:
Pavel P
2025-01-24 03:02:46 +02:00
parent ea0aa030cd
commit 1b15e888fc
2 changed files with 15 additions and 15 deletions
-15
View File
@@ -207,21 +207,6 @@
# pragma warning(disable : 4324) /* disable: C4324: padded structure */
#endif
/* Like DYNAMIC_BMI2 but for compile time determination of BMI2 support */
#ifndef STATIC_BMI2
# if defined(_MSC_VER)
# ifdef __AVX2__ /* MSVC does not have a BMI2 specific flag, but every CPU that supports AVX2 also supports BMI2 */
# define STATIC_BMI2 1
# endif
# elif defined(__BMI2__)
# define STATIC_BMI2 1
# endif
#endif
#ifndef STATIC_BMI2
# define STATIC_BMI2 0
#endif
/* compile time determination of SIMD support */
#if !defined(ZSTD_NO_INTRINSICS)
# if defined(__AVX2__)
+15
View File
@@ -74,6 +74,21 @@
# define ZSTD_HIDE_ASM_FUNCTION(func)
#endif
/* Like DYNAMIC_BMI2 but for compile time determination of BMI2 support */
#ifndef STATIC_BMI2
# if defined(_MSC_VER)
# ifdef __AVX2__ /* MSVC does not have a BMI2 specific flag, but every CPU that supports AVX2 also supports BMI2 */
# define STATIC_BMI2 1
# endif
# elif defined(__BMI2__)
# define STATIC_BMI2 1
# endif
#endif
#ifndef STATIC_BMI2
# define STATIC_BMI2 0
#endif
/* Enable runtime BMI2 dispatch based on the CPU.
* Enabled for clang & gcc >=4.8 on x86 when BMI2 isn't enabled by default.
*/