numam-dpdk/lib/acl
Konstantin Ananyev 8e2dd74f0a acl: fix build with GCC 11
gcc 11 with '-O2' complains about some variables being used without
being initialized:

In function ‘start_flow_avx512x8’,
    inlined from ‘search_trie_avx512x8.constprop’ at acl_run_avx512_common.h:317:
lib/librte_acl/acl_run_avx512_common.h:210:13: warning:
    ‘pdata’ is used uninitialized [-Wuninitialized]
In function ‘search_trie_avx512x8.constprop’:
lib/librte_acl/acl_run_avx512_common.h:314:32: note: ‘pdata’ declared here
...

Indeed, these variables are not explicitly initialized,
but this is done intentionally.
We rely on constant mask value that we pass to start_flow*() functions
as a parameter to mask out uninitialized values.
Note that '-O3' doesn't produce this warning.
Anyway, to support clean build with gcc-11 this patch adds
explicit initialization for these variables.
I checked the output binary: with '-O3' both clang and gcc 10/11
generate no extra code for it.
Also performance test didn't reveal any regressions.

Bugzilla ID: 673
Fixes: b64c2295f7 ("acl: add 256-bit AVX512 classify method")
Fixes: 45da22e42e ("acl: add 512-bit AVX512 classify method")
Cc: stable@dpdk.org

Reported-by: Ali Alnubani <alialnu@nvidia.com>
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
2021-05-05 12:10:15 +02:00
..
acl_bld.c lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_gen.c lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_run_altivec.c lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_run_altivec.h lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_run_avx2.c lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_run_avx2.h lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_run_avx512_common.h acl: fix build with GCC 11 2021-05-05 12:10:15 +02:00
acl_run_avx512.c lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_run_avx512x8.h lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_run_avx512x16.h lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_run_neon.c lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_run_neon.h lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_run_scalar.c lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_run_sse.c lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_run_sse.h lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_run.h lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl_vect.h lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
acl.h lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
meson.build lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
rte_acl_osdep.h lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
rte_acl.c lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
rte_acl.h lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
tb_mem.c lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
tb_mem.h lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
version.map lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00