net/mlx5: add Altivec Rx

Added mlx5_rxtx_vec_altivec.h which supports vectorized RX
using Altivec vector code.  Modified associated build files
to use the new code.

Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
Tested-by: Raslan Darawsheh <rasland@mellanox.com>
This commit is contained in:
David Christensen 2019-08-16 12:56:04 -05:00 committed by Ferruh Yigit
parent 40549b086c
commit 2e542da709
4 changed files with 1080 additions and 1 deletions

View File

@ -19,6 +19,7 @@ SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_rxq.c
SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_txq.c
SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_rxtx.c
ifneq ($(filter y,$(CONFIG_RTE_ARCH_X86_64) \
$(CONFIG_RTE_ARCH_PPC_64) \
$(CONFIG_RTE_ARCH_ARM64)),)
SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_rxtx_vec.c
endif

View File

@ -59,7 +59,9 @@ if build
'mlx5_vlan.c',
'mlx5_devx_cmds.c',
)
if dpdk_conf.has('RTE_ARCH_X86_64') or dpdk_conf.has('RTE_ARCH_ARM64')
if (dpdk_conf.has('RTE_ARCH_X86_64')
or dpdk_conf.has('RTE_ARCH_ARM64')
or dpdk_conf.has('RTE_ARCH_PPC_64'))
sources += files('mlx5_rxtx_vec.c')
endif
if not pmd_dlopen

View File

@ -35,6 +35,8 @@
#include "mlx5_rxtx_vec_sse.h"
#elif defined RTE_ARCH_ARM64
#include "mlx5_rxtx_vec_neon.h"
#elif defined RTE_ARCH_PPC_64
#include "mlx5_rxtx_vec_altivec.h"
#else
#error "This should not be compiled if SIMD instructions are not supported."
#endif

File diff suppressed because it is too large Load Diff