From 06157f16597f75ca2cbe31bbf6633da1c4d60126 Mon Sep 17 00:00:00 2001 From: Arun Raghavan Date: Fri, 15 Dec 2023 09:34:15 -0500 Subject: [PATCH] build: Use Visual Studio-specific flags for AVX Needed for now, but unstable-simd is likely a better fix for all our SIMD building. --- meson.build | 7 +++++++ webrtc/common_audio/meson.build | 4 ++-- webrtc/modules/audio_processing/meson.build | 4 ++-- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/meson.build b/meson.build index 7aff86c..72e749f 100644 --- a/meson.build +++ b/meson.build @@ -174,6 +174,13 @@ common_cxxflags = common_cflags common_deps = os_deps + [absl_dep] webrtc_inc = include_directories('.') +# FIXME: use the unstable-simd module instead +if cc.get_define('_MSC_VER') != '' + avx_flags = ['/arch:AVX2'] +else + avx_flags = ['-mavx2', '-mfma'] +endif + subdir('webrtc') pkgconfig = import('pkgconfig') diff --git a/webrtc/common_audio/meson.build b/webrtc/common_audio/meson.build index 30ff0f2..1299bcd 100644 --- a/webrtc/common_audio/meson.build +++ b/webrtc/common_audio/meson.build @@ -83,8 +83,8 @@ if have_x86 ], dependencies: common_deps, include_directories: webrtc_inc, - c_args: common_cflags + ['-mavx2', '-mfma'], - cpp_args: common_cxxflags + ['-mavx2', '-mfma'] + c_args: common_cflags + avx_flags, + cpp_args: common_cxxflags + avx_flags ) ] endif diff --git a/webrtc/modules/audio_processing/meson.build b/webrtc/modules/audio_processing/meson.build index dc8d43b..91382db 100644 --- a/webrtc/modules/audio_processing/meson.build +++ b/webrtc/modules/audio_processing/meson.build @@ -177,8 +177,8 @@ if have_x86 ], dependencies: common_deps, include_directories: webrtc_inc, - c_args: common_cflags + apm_flags + ['-mavx2', '-mfma'], - cpp_args: common_cxxflags + apm_flags + ['-mavx2', '-mfma'] + c_args: common_cflags + apm_flags + avx_flags, + cpp_args: common_cxxflags + apm_flags + avx_flags ) ] endif