diff options
Diffstat (limited to 'files/source/compare_win.cc')
-rw-r--r-- | files/source/compare_win.cc | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/files/source/compare_win.cc b/files/source/compare_win.cc index d57d3d9d..9bb27f1d 100644 --- a/files/source/compare_win.cc +++ b/files/source/compare_win.cc @@ -22,8 +22,9 @@ namespace libyuv { extern "C" { #endif -// This module is for 32 bit Visual C x86 and clangcl -#if !defined(LIBYUV_DISABLE_X86) && defined(_M_IX86) && defined(_MSC_VER) +// This module is for 32 bit Visual C x86 +#if !defined(LIBYUV_DISABLE_X86) && defined(_MSC_VER) && \ + !defined(__clang__) && defined(_M_IX86) uint32_t HammingDistance_SSE42(const uint8_t* src_a, const uint8_t* src_b, @@ -77,8 +78,7 @@ __declspec(naked) uint32_t } } -// Visual C 2012 required for AVX2. -#if _MSC_VER >= 1700 +#ifdef HAS_SUMSQUAREERROR_AVX2 // C4752: found Intel(R) Advanced Vector Extensions; consider using /arch:AVX. #pragma warning(disable : 4752) __declspec(naked) uint32_t @@ -118,7 +118,7 @@ __declspec(naked) uint32_t ret } } -#endif // _MSC_VER >= 1700 +#endif // HAS_SUMSQUAREERROR_AVX2 uvec32 kHash16x33 = {0x92d9e201, 0, 0, 0}; // 33 ^ 16 uvec32 kHashMul0 = { @@ -196,7 +196,7 @@ __declspec(naked) uint32_t } // Visual C 2012 required for AVX2. -#if _MSC_VER >= 1700 +#ifdef HAS_HASHDJB2_AVX2 __declspec(naked) uint32_t HashDjb2_AVX2(const uint8_t* src, int count, uint32_t seed) { __asm { @@ -231,7 +231,7 @@ __declspec(naked) uint32_t ret } } -#endif // _MSC_VER >= 1700 +#endif // HAS_HASHDJB2_AVX2 #endif // !defined(LIBYUV_DISABLE_X86) && defined(_M_IX86) |