Top level 'cc_avx2_flags' was created and holds the correct flags depending on the compiler used.
File meson.build was updated to handle the correct AVX512 flags depending on compiler used. Signed-off-by: Andre Muezerie <andre...@linux.microsoft.com> --- lib/acl/meson.build | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/lib/acl/meson.build b/lib/acl/meson.build index fefe131a48..24e47b6cc1 100644 --- a/lib/acl/meson.build +++ b/lib/acl/meson.build @@ -19,7 +19,7 @@ if dpdk_conf.has('RTE_ARCH_X86') avx2_tmplib = static_library('avx2_tmp', 'acl_run_avx2.c', dependencies: static_rte_eal, - c_args: cflags + ['-mavx2']) + c_args: [cflags, cc_avx2_flags]) objs += avx2_tmplib.extract_objects('acl_run_avx2.c') # compile AVX512 version if: @@ -38,6 +38,12 @@ if dpdk_conf.has('RTE_ARCH_X86') # compiler flags, and then have the .o file from static lib # linked into main lib. + if is_ms_compiler + acl_avx512_args = cc_avx512_flags + else + acl_avx512_args = ['-mavx512f', '-mavx512vl', '-mavx512cd', '-mavx512bw'] + endif + # check if all required flags already enabled (variant a). acl_avx512_flags = ['__AVX512F__', '__AVX512VL__', '__AVX512CD__', '__AVX512BW__'] @@ -55,15 +61,11 @@ if dpdk_conf.has('RTE_ARCH_X86') sources += files('acl_run_avx512.c') cflags += '-DCC_AVX512_SUPPORT' - elif cc.has_multi_arguments('-mavx512f', '-mavx512vl', - '-mavx512cd', '-mavx512bw') - + elif cc.has_multi_arguments(acl_avx512_args) avx512_tmplib = static_library('avx512_tmp', 'acl_run_avx512.c', dependencies: static_rte_eal, - c_args: cflags + - ['-mavx512f', '-mavx512vl', - '-mavx512cd', '-mavx512bw']) + c_args: cflags + acl_avx512_args) objs += avx512_tmplib.extract_objects( 'acl_run_avx512.c') cflags += '-DCC_AVX512_SUPPORT' -- 2.48.1.vfs.0.0