From 0b3c9052a870e79ebf34970904cdbbdc5de10d77 Mon Sep 17 00:00:00 2001 From: Tom Finegan <tomfinegan@google.com> Date: Tue, 14 Feb 2017 11:04:56 -0800 Subject: [PATCH] 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 --- build/cmake/aom_optimization.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/build/cmake/aom_optimization.cmake b/build/cmake/aom_optimization.cmake index ce51e1bbff..b71217d3c7 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 () -- GitLab