[PATCH v3 02/10] event/dlb2: use global AVX-512 variables
Bruce Richardson
bruce.richardson at intel.com
Tue Oct 8 18:52:50 CEST 2024
Replace per-driver checks for AVX-512 with the standard variables from
config/x86.
Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
---
drivers/event/dlb2/meson.build | 42 ++++++++--------------------------
1 file changed, 9 insertions(+), 33 deletions(-)
diff --git a/drivers/event/dlb2/meson.build b/drivers/event/dlb2/meson.build
index 515d1795fe..34131fd18b 100644
--- a/drivers/event/dlb2/meson.build
+++ b/drivers/event/dlb2/meson.build
@@ -26,43 +26,19 @@ sources = files(
# we are building 64-bit binary (checked above) AND binutils
# can generate proper code
-if binutils_ok
+if target_has_avx512
+ sources += files('dlb2_avx512.c')
+ cflags += '-DCC_AVX512_SUPPORT'
- # compile AVX512 version if either:
- # a. we have AVX512VL supported in minimum instruction set
- # baseline
- # b. it's not minimum instruction set, but supported by
- # compiler
- #
- # in former case, just add avx512 C file to files list
- # in latter case, compile c file to static lib, using correct
- # compiler flags, and then have the .o file from static lib
- # linked into main lib.
-
- # check if all required flags already enabled (variant a).
- dlb2_avx512_on = false
- if cc.get_define('__AVX512VL__', args: machine_args) != ''
- dlb2_avx512_on = true
- endif
-
- if dlb2_avx512_on == true
-
- sources += files('dlb2_avx512.c')
- cflags += '-DCC_AVX512_SUPPORT'
-
- elif cc.has_multi_arguments('-mavx512vl')
-
- cflags += '-DCC_AVX512_SUPPORT'
- avx512_tmplib = static_library('avx512_tmp',
+elif cc_has_avx512
+ cflags += '-DCC_AVX512_SUPPORT'
+ avx512_tmplib = static_library('avx512_tmp',
'dlb2_avx512.c',
dependencies: [static_rte_eal, static_rte_eventdev],
- c_args: cflags + ['-mavx512vl'])
- objs += avx512_tmplib.extract_objects('dlb2_avx512.c')
- else
- sources += files('dlb2_sse.c')
- endif
+ c_args: cflags + cc_avx512_flags)
+ objs += avx512_tmplib.extract_objects('dlb2_avx512.c')
else
- sources += files('dlb2_sse.c')
+ sources += files('dlb2_sse.c')
endif
headers = files('rte_pmd_dlb2.h')
--
2.43.0
More information about the dev
mailing list