On Wed, Mar 20, 2024 at 10:25 PM Tyler Retzlaff <roret...@linux.microsoft.com> wrote: > > provide toolchain abstraction for __builtin_ffs{,l,ll} gcc built-in > intrinsics. > > Signed-off-by: Tyler Retzlaff <roret...@linux.microsoft.com>
Please add a unit test and an entry in the release notes. > --- > lib/eal/include/rte_bitops.h | 34 ++++++++++++++++++++++++++++++++++ > 1 file changed, 34 insertions(+) > > diff --git a/lib/eal/include/rte_bitops.h b/lib/eal/include/rte_bitops.h > index 449565e..e157a45 100644 > --- a/lib/eal/include/rte_bitops.h > +++ b/lib/eal/include/rte_bitops.h > @@ -405,6 +405,28 @@ > return (unsigned int)__popcnt64(v); > } > > +static inline unsigned int > +rte_ffs32(uint32_t v) > +{ > + unsigned long rv; > + > + if (0 == _BitScanForward(&rv, v)) _BitScanForward(&rv, v) == 0 please. -- David Marchand