[dpdk-dev] [PATCH v6 0/4] add arm64 neon version of CRC compute APIs
Ashwin Sekhar T K
ashwin.sekhar at caviumnetworks.com
Tue Jul 4 11:24:04 CEST 2017
This patch series adds arm64 neon version of CRC compute APIs utilizing
the pmull capability (which is available as part of crypto extensions).
* Patch 1 adds crypto capability in compilation of generic armv8a
and thunderx targets.
* Patch 2 moves GCC_VERSION defintion to a more common location as
it will be used in the Patch 3.
* Patch 3 adds the arm64 neon implementation of the CRC compute APIs.
* Patch 4 adds the test case for testing arm64 neon implementation of the
CRC compute APIs.
v6:
* Corrected the fallthrough comment style.
* Rebased to DPDK tip.
v5:
* Moved APIs shift_bytes_left, shift_bytes_right and extract_vector from
net_crc_neon.h to rte_vect.h and renamed them to vshift_bytes_left,
vshift_bytes_right and vextract respectively.
v4:
* Rebased on top of latest commit
* Edited the Patch 2 commit message body according to comments
* Moved definition and usage of GCC_VERSION under RTE_TOOLCHAIN_GCC flag
v3:
* Moved feature detection changes and GCC_VERSION definition changes
to separate commits.
* Replaced usage of assert() with RTE_ASSERT()
* Made the comments in rte_vect.h more positive in sense
* Moved GCC_VERSION definition to common header and removed the same from
rte_lru.h
v2:
* Fixed merge conflict in MAINTAINERS
* Fixed checkpatch errors/warnings
Ashwin Sekhar T K (4):
mk: add crypto capability for generic armv8a and thunderx
eal: move gcc version definition to common header
net: add arm64 neon version of CRC compute APIs
test: add tests for arm64 CRC neon versions
MAINTAINERS | 1 +
lib/librte_eal/common/include/arch/arm/rte_vect.h | 88 +++++++
lib/librte_eal/common/include/rte_common.h | 6 +
lib/librte_net/net_crc_neon.h | 297 ++++++++++++++++++++++
lib/librte_net/rte_net_crc.c | 34 ++-
lib/librte_net/rte_net_crc.h | 2 +
lib/librte_table/rte_lru_x86.h | 10 +-
mk/machine/armv8a/rte.vars.mk | 2 +-
mk/machine/thunderx/rte.vars.mk | 2 +-
mk/rte.cpuflags.mk | 6 +
mk/toolchain/gcc/rte.toolchain-compat.mk | 1 +
test/test/test_crc.c | 9 +
12 files changed, 442 insertions(+), 16 deletions(-)
create mode 100644 lib/librte_net/net_crc_neon.h
--
2.12.2
More information about the dev
mailing list