18/09/2025 11:40, Thomas Monjalon: > 18/09/2025 11:08, Thomas Monjalon: > > When switching to Meson build, the compilation check on CC_SUPPORT_AVX2 > > became obsolete, thus the case EFD_LOOKUP_AVX2 became dead. > > The function efd_lookup_internal_avx2() was never called, > > and its header include rte_efd_x86.h has been removed later. > > > > AVX2 is assumed to be always supported on x86 with supported compilers, > > so the check for AVX2 is simply removed, and the include is added back. > [...] > > -#if defined(RTE_ARCH_X86) && defined(CC_SUPPORT_AVX2) > > +#if defined(RTE_ARCH_X86) > > case EFD_LOOKUP_AVX2: > > return efd_lookup_internal_avx2(group->hash_idx, > > group->lookup_table, > > I've forgotten to say that there is a runtime check: > > if (RTE_EFD_VALUE_NUM_BITS > 3 > && rte_cpu_get_flag_enabled(RTE_CPUFLAG_AVX2) > && rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_256) > table->lookup_fn = EFD_LOOKUP_AVX2;
So the end of the commit log must be changed with this explanation: EFD_LOOKUP_AVX2 is chosen at runtime after checking AVX2 availability, so the obsolete build-time check for AVX2 can be simply removed, and the missing include added back.