diff options
author | Luca Boccassi <luca.boccassi@gmail.com> | 2019-03-20 14:50:04 +0000 |
---|---|---|
committer | Luca Boccassi <luca.boccassi@gmail.com> | 2019-03-20 14:50:10 +0000 |
commit | 36e178648f46ea9fb63d89097c59ce45fb8a67fe (patch) | |
tree | e3ee0ea25a45aa28918dc721dd1fe19b27d6849c /lib/librte_sched/rte_reciprocal.c | |
parent | 1ab31fb74132eabd45f326413eb6e4f647de48d9 (diff) | |
parent | f7a9461e29147c47ce2bb81bd157ac1833cf5eb1 (diff) |
Merge tag 'upstream/16.11.9' into 16.11.x
Upstream version 16.11.9
Change-Id: I947c2532ec89a9850d135bde544b4d5812b49e4f
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; |