mbox series

[v3,0/5] xen/bitops: hweight() cleanup/improvements

Message ID 20240904225530.3888315-1-andrew.cooper3@citrix.com (mailing list archive)
Headers show
Series xen/bitops: hweight() cleanup/improvements | expand

Message

Andrew Cooper Sept. 4, 2024, 10:55 p.m. UTC
The next phase of bitops cleanup.  This series:

 1) Untangles the mess around hweight()
 2) Removes some unwise uses of hweight()
 3) Makes it work transparently for RISC-V
 4) Use the POPCNT instruction on x86 when available

6 patches from the v2 posting has been committed.  See the remainder for v3
changes.

Andrew Cooper (5):
  xen/bitops: Reinstate the please tidy message
  xen/bitops: Drop the remnants of hweight{8,16}()
  xen/bitops: Implement hweight32() in terms of hweightl()
  xen/bitops: Implement hweight64() in terms of hweight{l,32}()
  x86/bitops: Use the POPCNT instruction when available

 xen/arch/arm/include/asm/bitops.h | 11 -----
 xen/arch/ppc/include/asm/bitops.h | 11 -----
 xen/arch/x86/include/asm/bitops.h | 32 +++++++++-----
 xen/common/bitops.c               |  3 ++
 xen/include/xen/bitops.h          | 69 +++++++-----------------------
 xen/lib/Makefile                  |  1 +
 xen/lib/x86-generic-hweightl.c    | 71 +++++++++++++++++++++++++++++++
 7 files changed, 112 insertions(+), 86 deletions(-)
 create mode 100644 xen/lib/x86-generic-hweightl.c