mbox

[v2,0/5] lpm lookup with sve support

Message ID 20210108082523.1062058-1-ruifeng.wang@arm.com (mailing list archive)
Headers

Message

Ruifeng Wang Jan. 8, 2021, 8:25 a.m. UTC
  Added lpm4 lookupx4 implementation by using Arm SVE extension.
The SVE is Scalable Vector Extension which is exposed to the
user with a vector length agnostic interface.
Refer to [1] for more information about SVE.

Configuration was added for Neoverse N2 CPU which has SVE support.

Some bugs were fixed so compiling with sve enabled can pass.

[1] https://developer.arm.com/tools-and-software/server-and-hpc/compile/arm-instruction-emulator/resources/tutorials/sve

---
v2:
Fixed tbl8 group index calculation. (Vladimir)
Added N2 config.
Fixed compiling when sve was enabled.

Ruifeng Wang (5):
  lpm: add sve support for lookup on Arm platform
  net/hns3: fix build with sve enabled
  net/octeontx: fix build with sve enabled
  common/octeontx2: fix build with sve enabled
  config: add Arm Neoverse N2

 config/arm/arm64_n2_linux_gcc            | 17 +++++
 config/arm/meson.build                   | 11 +++-
 drivers/common/octeontx2/otx2_io_arm64.h | 37 ++---------
 drivers/net/hns3/meson.build             |  2 +-
 drivers/net/octeontx/base/octeontx_io.h  | 16 ++---
 lib/librte_eal/arm/include/rte_vect.h    |  3 +
 lib/librte_lpm/meson.build               |  2 +-
 lib/librte_lpm/rte_lpm.h                 |  4 ++
 lib/librte_lpm/rte_lpm_sve.h             | 83 ++++++++++++++++++++++++
 9 files changed, 127 insertions(+), 48 deletions(-)
 create mode 100644 config/arm/arm64_n2_linux_gcc
 create mode 100644 lib/librte_lpm/rte_lpm_sve.h