mbox

[0/4] Enhance CPU flag support

Message ID 20190529154132.49955-1-bruce.richardson@intel.com (mailing list archive)
Headers

Message

Bruce Richardson May 29, 2019, 3:41 p.m. UTC
  Currently in DPDK, any checks for the presence or absense of specific
CPU flags has to be enclosed in #ifdef blocks, since the flags are
conditionally defined per architecture as enums. This set attempts to
improve this situation by allowing the flags to be queried as strings,
with a CPU architecture type also specified. One new public API is
provided for this. [Other APIs used by that are internal for now, but
have an rte_ prefix in case we want to expose them publically later]

To test out this new functionality the crc code in the net library is
updated to use this, demonstrating how the code can be simplified and
the use of #ifdef's reduced.

Bruce Richardson (4):
  build: fix quoting on RTE_ARCH string value
  config/arm: fix missing define for arm platforms
  eal: allow checking CPU flags by name
  net: replace ifdefs with runtime branches

 config/arm/meson.build                        |  2 +
 config/ppc_64/meson.build                     |  2 +-
 config/x86/meson.build                        |  4 +-
 lib/librte_eal/common/eal_common_cpuflags.c   | 41 +++++++++++++++++
 .../common/include/generic/rte_cpuflags.h     | 44 ++++++++++++++++++-
 lib/librte_eal/rte_eal_version.map            |  3 ++
 lib/librte_net/rte_net_crc.c                  | 38 ++++++++++------
 7 files changed, 117 insertions(+), 17 deletions(-)