diff options
author | Luca Boccassi <luca.boccassi@gmail.com> | 2019-03-20 14:45:09 +0000 |
---|---|---|
committer | Luca Boccassi <luca.boccassi@gmail.com> | 2019-03-20 14:45:37 +0000 |
commit | f7a9461e29147c47ce2bb81bd157ac1833cf5eb1 (patch) | |
tree | 6f3b4f4850cf9f116acc1dda3f0515259673e13b /lib/librte_sched/rte_reciprocal.c | |
parent | 8e6d9d118f6105a3627b64a7949e1fb0b145879e (diff) |
New upstream version 16.11.9upstream/16.11.9upstream-16.11-stable
Change-Id: Ia1ac246c53e5050b6a29d6952fb668ad6c782996
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
Diffstat (limited to 'lib/librte_sched/rte_reciprocal.c')
-rw-r--r-- | lib/librte_sched/rte_reciprocal.c | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/lib/librte_sched/rte_reciprocal.c b/lib/librte_sched/rte_reciprocal.c index 652f0237..385109cd 100644 --- a/lib/librte_sched/rte_reciprocal.c +++ b/lib/librte_sched/rte_reciprocal.c @@ -38,28 +38,13 @@ #include "rte_reciprocal.h" -/* find largest set bit. - * portable and slow but does not matter for this usage. - */ -static inline int fls(uint32_t x) -{ - int b; - - for (b = 31; b >= 0; --b) { - if (x & (1u << b)) - return b + 1; - } - - return 0; -} - struct rte_reciprocal rte_reciprocal_value(uint32_t d) { struct rte_reciprocal R; uint64_t m; int l; - l = fls(d - 1); + l = rte_fls_u32(d - 1); m = ((1ULL << 32) * ((1ULL << l) - d)); m /= d; |