From: Tyler Retzlaff <roretzla@linux.microsoft.com>
To: dev@dpdk.org
Cc: thomas@monjalon.net, stephen@networkplumber.org,
mb@smartsharesystems.com, bruce.richardson@intel.com,
ferruh.yigit@amd.com, david.marchand@redhat.com,
Tyler Retzlaff <roretzla@linux.microsoft.com>
Subject: [PATCH v8 0/3] eal: provide abstracted bit counting functions
Date: Mon, 3 Apr 2023 17:11:55 -0700 [thread overview]
Message-ID: <1680567118-6435-1-git-send-email-roretzla@linux.microsoft.com> (raw)
In-Reply-To: <1669241687-18810-1-git-send-email-roretzla@linux.microsoft.com>
As discussed technical board meeting 2023-02-22
http://mails.dpdk.org/archives/dev/2023-February/263516.html
We will bring support in pieces for the MSVC compiler, there will be
some abstractions and functions introduced before the compiler is
capable of compiling DPDK in order to make parallel progress
while waiting for standard atomics in 23.07.
A higher level plan / order of work is available in the Microsoft
roadmap for 23.07 and 23.11.
note:
Bruce Richardson previous acks have been preserved but be aware of
the two additional functions introduced in v7. If you wish to withdraw
your ack, please let me know but I believe the 2 additions are consistent
with previous.
v8:
* squish patch including rte_bitops.h in lib/pipeline into
first patch.
v7:
* add 2 additional counting functions rte_popcount{32,64}
including basic unit tests
* fix patch 1 title link (CI complained too long)
* add test_bitcount.c entry to MAINTAINERS file
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 (3):
eal: move bit count functions to bitops header
eal: provide abstracted bit count functions
maintainers: add bitcount test under EAL API and common code
MAINTAINERS | 1 +
app/test/meson.build | 2 +
app/test/test_bitcount.c | 136 ++++++++
app/test/test_common.c | 1 +
lib/eal/common/rte_reciprocal.c | 1 +
lib/eal/include/rte_bitops.h | 532 +++++++++++++++++++++++++++++++
lib/eal/include/rte_common.h | 293 -----------------
lib/pipeline/rte_swx_pipeline_internal.h | 1 +
8 files changed, 674 insertions(+), 293 deletions(-)
create mode 100644 app/test/test_bitcount.c
--
1.8.3.1
next prev parent reply other threads:[~2023-04-04 0:12 UTC|newest]
Thread overview: 81+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-23 22:14 [PATCH 0/2] eal: provide leading and trailing zero bit count Tyler Retzlaff
2022-11-23 22:14 ` [PATCH 1/2] eal: provide leading and trailing zero bit count abstraction Tyler Retzlaff
2023-04-03 21:46 ` Mattias Rönnblom
2022-11-23 22:14 ` [PATCH 2/2] test/bitcount: add bitcount tests Tyler Retzlaff
2022-11-23 23:43 ` [PATCH v2 0/2] eal: provide leading and trailing zero bit count Tyler Retzlaff
2022-11-23 23:43 ` [PATCH v2 1/2] eal: provide leading and trailing zero bit count abstraction Tyler Retzlaff
2022-11-24 10:17 ` Morten Brørup
2022-11-28 17:13 ` Tyler Retzlaff
2022-11-28 17:22 ` Morten Brørup
2022-11-28 17:27 ` Tyler Retzlaff
2023-01-05 9:04 ` Thomas Monjalon
2023-01-05 17:23 ` Tyler Retzlaff
2023-01-05 17:27 ` Tyler Retzlaff
2023-01-05 20:57 ` Tyler Retzlaff
2023-01-05 21:34 ` Morten Brørup
2023-01-05 22:06 ` Tyler Retzlaff
2023-01-05 23:10 ` Morten Brørup
2023-01-06 1:04 ` Tyler Retzlaff
2023-01-06 10:09 ` Thomas Monjalon
2023-01-06 10:00 ` Thomas Monjalon
2023-01-05 7:09 ` Morten Brørup
2023-01-05 9:01 ` Thomas Monjalon
2023-01-05 17:21 ` Tyler Retzlaff
2023-01-06 0:32 ` Stephen Hemminger
2023-01-06 11:48 ` Bruce Richardson
2023-01-06 12:41 ` Morten Brørup
2023-01-06 13:40 ` Thomas Monjalon
2023-01-06 18:58 ` Tyler Retzlaff
2023-01-06 20:51 ` Thomas Monjalon
2023-01-10 9:18 ` Ferruh Yigit
2023-01-06 18:47 ` Tyler Retzlaff
2023-01-09 8:50 ` Bruce Richardson
2023-04-04 21:23 ` Tyler Retzlaff
2023-04-05 8:44 ` Bruce Richardson
2023-04-05 15:22 ` Tyler Retzlaff
2023-04-05 15:51 ` Bruce Richardson
2023-04-05 17:25 ` Tyler Retzlaff
2022-11-23 23:43 ` [PATCH v2 2/2] test/bitcount: add bitcount tests Tyler Retzlaff
2023-01-04 23:46 ` [PATCH v2 0/2] eal: provide leading and trailing zero bit count Tyler Retzlaff
2023-01-09 17:36 ` [PATCH v4 0/2] eal: provide leading and trailing zero bit count abstraction Tyler Retzlaff
2023-01-09 17:36 ` [PATCH v4 1/2] eal: move bit operation functions from common to bitops header Tyler Retzlaff
2023-01-10 13:56 ` Ferruh Yigit
2023-01-09 17:36 ` [PATCH v4 2/2] eal: provide leading and trailing zero bit count abstraction Tyler Retzlaff
2023-01-10 13:55 ` Ferruh Yigit
2023-01-10 17:34 ` Tyler Retzlaff
2023-01-10 18:37 ` Tyler Retzlaff
2023-01-10 13:56 ` [PATCH v4 0/2] " Ferruh Yigit
2023-01-06 22:01 ` [PATCH v3 0/3] eal: provide leading and trailing zero bit count Tyler Retzlaff
2023-01-06 22:01 ` [PATCH v3 1/3] eal: move bit functions from common to bitops header Tyler Retzlaff
2023-01-06 22:01 ` [PATCH v3 2/3] eal: provide leading and trailing zero bit count abstraction Tyler Retzlaff
2023-01-06 22:01 ` [PATCH v3 3/3] test/bitcount: add bitcount tests Tyler Retzlaff
2023-01-07 8:15 ` Thomas Monjalon
2023-01-09 16:57 ` Tyler Retzlaff
2023-01-09 17:26 ` Tyler Retzlaff
2023-01-07 13:40 ` Morten Brørup
2023-01-09 8:51 ` [PATCH v3 0/3] eal: provide leading and trailing zero bit count Bruce Richardson
2023-01-10 19:38 ` [PATCH v5 0/2] eal: provide leading and trailing zero bit count abstraction Tyler Retzlaff
2023-01-10 19:38 ` [PATCH v5 1/2] eal: move bit operation common to bitops header Tyler Retzlaff
2023-01-10 19:38 ` [PATCH v5 2/2] eal: provide leading and trailing zero bit count abstraction Tyler Retzlaff
2023-01-10 19:46 ` [PATCH v6 0/2] " Tyler Retzlaff
2023-01-10 19:46 ` [PATCH v6 1/2] eal: move bit operation common to bitops header Tyler Retzlaff
2023-01-10 19:46 ` [PATCH v6 2/2] eal: provide leading and trailing zero bit count abstraction Tyler Retzlaff
2023-01-20 22:14 ` [PATCH v6 0/2] " Tyler Retzlaff
2023-02-02 9:14 ` David Marchand
2023-02-02 10:56 ` David Marchand
2023-02-02 15:57 ` Tyler Retzlaff
2023-02-03 9:14 ` David Marchand
2023-02-02 15:56 ` Tyler Retzlaff
2023-02-03 9:21 ` David Marchand
2023-04-01 0:45 ` [PATCH v7 0/4] eal: provide abstracted bit counting functions Tyler Retzlaff
2023-04-01 0:45 ` [PATCH v7 1/4] eal: move bit count functions to bitops header Tyler Retzlaff
2023-04-01 0:45 ` [PATCH v7 2/4] eal: provide abstracted bit count functions Tyler Retzlaff
2023-04-01 0:45 ` [PATCH v7 3/4] pipeline: add include of bitops Tyler Retzlaff
2023-04-01 0:45 ` [PATCH v7 4/4] maintainers: add bitcount test under EAL API and common code Tyler Retzlaff
2023-04-01 7:08 ` [PATCH v7 0/4] eal: provide abstracted bit counting functions Morten Brørup
2023-04-04 0:11 ` Tyler Retzlaff [this message]
2023-04-04 0:11 ` [PATCH v8 1/3] eal: move bit count functions to bitops header Tyler Retzlaff
2023-04-04 0:11 ` [PATCH v8 2/3] eal: provide abstracted bit count functions Tyler Retzlaff
2023-04-04 0:11 ` [PATCH v8 3/3] maintainers: add bitcount test under EAL API and common code Tyler Retzlaff
2023-04-04 8:27 ` [PATCH v8 0/3] eal: provide abstracted bit counting functions Bruce Richardson
2023-08-25 8:41 ` David Marchand
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1680567118-6435-1-git-send-email-roretzla@linux.microsoft.com \
--to=roretzla@linux.microsoft.com \
--cc=bruce.richardson@intel.com \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@amd.com \
--cc=mb@smartsharesystems.com \
--cc=stephen@networkplumber.org \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).