[dpdk-dev] [PATCH v4 12/14] acl: deduplicate AVX512 code paths

Ferruh Yigit ferruh.yigit at intel.com
Fri Oct 16 17:56:33 CEST 2020


On 10/6/2020 4:03 PM, Konstantin Ananyev wrote:
> Current rte_acl_classify_avx512x32() and rte_acl_classify_avx512x16()
> code paths are very similar. The only differences are due to
> 256/512 register/instrincts naming conventions.
> So to deduplicate the code:
>    - Move common code into “acl_run_avx512_common.h”
>    - Use macros to hide difference in naming conventions
> 
> Signed-off-by: Konstantin Ananyev <konstantin.ananyev at intel.com>

<...>

> @@ -120,7 +161,7 @@ _m256_mask_gather_epi8x4(__m256i pdata, __mmask8 mask)
>   
>   	static const uint32_t zero;

icc complains about this, although it is static [1].
Would it be acceptable to initialize variable explicitly to '0'?


[1]
In file included from ../lib/librte_acl/acl_run_avx512.c(110):
../lib/librte_acl/acl_run_avx512x8.h(162): warning #300: const variable "zero" 
requires an initializer
         static const uint32_t zero;
                                  ^

In file included from ../lib/librte_acl/acl_run_avx512.c(137):
../lib/librte_acl/acl_run_avx512x16.h(198): warning #300: const variable "zero" 
requires an initializer
         static const uint32_t zero;
                                  ^


More information about the dev mailing list