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:
parent
40549b086c
commit
2e542da709
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
1074
drivers/net/mlx5/mlx5_rxtx_vec_altivec.h
Normal file
1074
drivers/net/mlx5/mlx5_rxtx_vec_altivec.h
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user