v6: * remove stray #include <stdio.h> v5: * fix implementation of msvc versions of rte_clz{32,64} incorrect use of _BitscanReverse{,64} index. * fix and expand unit test to exercise full range of counting over uint{32,64}_t input values. (which would have caught above mistake). * reduce commit title length * correct commit author
v4: * combine unit test commit into function addition commit v3: * rename to use 32/64 instead of l/ll suffixes * add new functions to rte_bitops.h instead of new header * move other bit functions from rte_common.h to rte_bitops.h v2: * use unsigned int instead of unsigned (checkpatches) * match multiple include guard naming convention to rte_common.h * add explicit extern "C" linkage to rte_bitcount.h note: not really needed but checkpatches required * add missing space around '-' Tyler Retzlaff (2): eal: move bit operation common to bitops header eal: provide leading and trailing zero bit count abstraction app/test/meson.build | 2 + app/test/test_bitcount.c | 93 ++++++++ app/test/test_common.c | 1 + lib/eal/common/rte_reciprocal.c | 1 + lib/eal/include/rte_bitops.h | 460 ++++++++++++++++++++++++++++++++++++++++ lib/eal/include/rte_common.h | 293 ------------------------- 6 files changed, 557 insertions(+), 293 deletions(-) create mode 100644 app/test/test_bitcount.c -- Series-acked-by: Morten Brørup <m...@smartsharesystems.com> Series-acked-by: Bruce Richardson <bruce.richard...@intel.com>