Correct cmake intrinsic flag translation. MSVC only. Use the AVX/AVX2 flags only for AVX and AVX2. Ignore the SSE flags since they're not needed with MSVC. BUG=https://bugs.chromium.org/p/aomedia/issues/detail?id=76 Change-Id: I0f3ac40ffb1f9c53a16272f0781df176317732f6
diff --git a/build/cmake/aom_optimization.cmake b/build/cmake/aom_optimization.cmake index ce51e1b..b71217d 100644 --- a/build/cmake/aom_optimization.cmake +++ b/build/cmake/aom_optimization.cmake
@@ -12,13 +12,13 @@ # Translate $flag to one which MSVC understands, and write the new flag to the # variable named by $translated_flag (or unset it, when MSVC needs no flag). function (get_msvc_intrinsic_flag flag translated_flag) - if ("${flag}" STREQUAL "-msse2") - # MSVC does not require a flag for SSE2 (as of MSVS 14). - unset(${translated_flag} PARENT_SCOPE) + if ("${flag}" STREQUAL "-mavx") + set(${translated_flag} "/arch:AVX" PARENT_SCOPE) elseif ("${flag}" STREQUAL "-mavx2") set(${translated_flag} "/arch:AVX2" PARENT_SCOPE) else () - set(${translated_flag} "/arch:AVX" PARENT_SCOPE) + # MSVC does not need flags for intrinsics flavors other than AVX/AVX2. + unset(${translated_flag} PARENT_SCOPE) endif () endfunction ()