diff --git a/unit_test/cpu_test.cc b/unit_test/cpu_test.cc index 4eea38799..f346f503b 100644 --- a/unit_test/cpu_test.cc +++ b/unit_test/cpu_test.cc @@ -13,6 +13,7 @@ #include "libyuv/basic_types.h" #include "libyuv/cpu_id.h" +#include "libyuv/row.h" // For HAS_ARGBSHUFFLEROW_AVX2. #include "libyuv/version.h" #include "../unit_test/unit_test.h" @@ -52,11 +53,22 @@ TEST_F(libyuvTest, TestCpuHas) { } TEST_F(libyuvTest, TestCompilerHasAVX2) { -#if defined(GCC_HAS_AVX2) || defined(CLANG_HAS_AVX2) || \ - defined(VISUALC_HAS_AVX2) +#ifdef _MSC_VER +printf("_MSC_VER %d\n", _MSC_VER); +#endif +#if !defined(LIBYUV_DISABLE_X86) && (defined(GCC_HAS_AVX2) || \ + defined(CLANG_HAS_AVX2) || defined(VISUALC_HAS_AVX2)) printf("Has AVX2 1\n"); + // If compiler supports AVX2, the following function is expected to exist: +#if !defined(HAS_ARGBSHUFFLEROW_AVX2) + EXPECT_TRUE(0); // HAS_ARGBSHUFFLEROW_AVX2 was expected. +#endif #else printf("Has AVX2 0\n"); + // If compiler does not support AVX2, the following function not expected: +#if defined(HAS_ARGBSHUFFLEROW_AVX2) + EXPECT_TRUE(0); // HAS_ARGBSHUFFLEROW_AVX2 was not expected. +#endif #endif }