On 2 May 2017 at 14:41, Jerin Jacob <jerin.ja...@caviumnetworks.com> wrote: > -----Original Message----- >> Date: Mon, 1 May 2017 22:59:53 -0700 >> From: Ashwin Sekhar T K <ashwin.sek...@caviumnetworks.com> >> To: byron.mar...@intel.com, pablo.de.lara.gua...@intel.com, >> jerin.ja...@caviumnetworks.com, jianbo....@linaro.org >> Cc: dev@dpdk.org, Ashwin Sekhar T K <ashwin.sek...@caviumnetworks.com> >> Subject: [dpdk-dev] [PATCH v3] efd: support lookup using neon intrinsics >> X-Mailer: git-send-email 2.13.0.rc1 >> >> * Added file lib/librte_efd/rte_efd_arm64.h to hold arm64 >> specific definitions >> * Verified the changes with efd_autotest unit test case >> >> Signed-off-by: Ashwin Sekhar T K <ashwin.sek...@caviumnetworks.com> >> --- >> v2: >> * Slightly modified the content of the commit message body >> * Added prefix [dpdk-dev] to the email subject line >> >> v3: >> * Moved enum 'EFD_LOOKUP_NEON' under '#if defined(RTE_ARCH_ARM64)' >> >> MAINTAINERS | 1 + >> lib/librte_efd/rte_efd.c | 24 +++++++++++++ >> lib/librte_efd/rte_efd_arm64.h | 76 >> ++++++++++++++++++++++++++++++++++++++++++ >> 3 files changed, 101 insertions(+) >> create mode 100644 lib/librte_efd/rte_efd_arm64.h >> >> diff --git a/MAINTAINERS b/MAINTAINERS >> index b6495d2..7d708ae 100644 >> --- a/MAINTAINERS >> +++ b/MAINTAINERS >> @@ -147,6 +147,7 @@ F: lib/librte_eal/common/include/arch/arm/*_64.h >> F: lib/librte_acl/acl_run_neon.* >> F: lib/librte_lpm/rte_lpm_neon.h >> F: lib/librte_hash/rte*_arm64.h >> +F: lib/librte_efd/rte*_arm64.h >> F: drivers/net/ixgbe/ixgbe_rxtx_vec_neon.c >> F: drivers/net/i40e/i40e_rxtx_vec_neon.c >> F: drivers/net/virtio/virtio_rxtx_simple_neon.c >> diff --git a/lib/librte_efd/rte_efd.c b/lib/librte_efd/rte_efd.c >> index f601d62..5cc6283 100644 >> --- a/lib/librte_efd/rte_efd.c >> +++ b/lib/librte_efd/rte_efd.c >> @@ -53,6 +53,8 @@ >> #include "rte_efd.h" >> #if defined(RTE_ARCH_X86) >> #include "rte_efd_x86.h" >> +#elif defined(RTE_ARCH_ARM64) >> +#include "rte_efd_arm64.h" >> #endif >> >> #define EFD_KEY(key_idx, table) (table->keys + ((key_idx) * table->key_len)) >> @@ -103,6 +105,9 @@ allocated memory >> enum efd_lookup_internal_function { >> EFD_LOOKUP_SCALAR = 0, >> EFD_LOOKUP_AVX2, >> +#if defined(RTE_ARCH_ARM64) >> + EFD_LOOKUP_NEON, >> +#endif > > I think, we can remove this ifdef to > - Make code looks clean > - In future, in some case a new enum value gets added then the value > will be different for each build. >
But the enum items are same for each ARCH. Besides, the ifdef could be considered as explanation to that enum. If someone knows nothing about arm/neon, he can ignore it totally after see the ifdef. > Any valid point to keep under RTE_ARCH_ARM64? > >> EFD_LOOKUP_NUM >> };