diff options
Diffstat (limited to 'libtommath/bn_mp_count_bits.c')
-rw-r--r-- | libtommath/bn_mp_count_bits.c | 46 |
1 files changed, 23 insertions, 23 deletions
diff --git a/libtommath/bn_mp_count_bits.c b/libtommath/bn_mp_count_bits.c index 00d364e..f7a05df 100644 --- a/libtommath/bn_mp_count_bits.c +++ b/libtommath/bn_mp_count_bits.c @@ -1,4 +1,4 @@ -#include <tommath.h> +#include "tommath_private.h" #ifdef BN_MP_COUNT_BITS_C /* LibTomMath, multiple-precision integer library -- Tom St Denis * @@ -9,33 +9,33 @@ * Michael Fromberger but has been written from scratch with * additional optimizations in place. * - * The library is free for all purposes without any express - * guarantee it works. - * - * Tom St Denis, tomstdenis@gmail.com, http://math.libtomcrypt.com + * SPDX-License-Identifier: Unlicense */ /* returns the number of bits in an int */ -int -mp_count_bits (const mp_int * a) +int mp_count_bits(const mp_int *a) { - int r; - mp_digit q; + int r; + mp_digit q; + + /* shortcut */ + if (a->used == 0) { + return 0; + } - /* shortcut */ - if (a->used == 0) { - return 0; - } + /* get number of digits and add that */ + r = (a->used - 1) * DIGIT_BIT; - /* get number of digits and add that */ - r = (a->used - 1) * DIGIT_BIT; - - /* take the last digit and count the bits in it */ - q = a->dp[a->used - 1]; - while (q > ((mp_digit) 0)) { - ++r; - q >>= ((mp_digit) 1); - } - return r; + /* take the last digit and count the bits in it */ + q = a->dp[a->used - 1]; + while (q > (mp_digit)0) { + ++r; + q >>= (mp_digit)1; + } + return r; } #endif + +/* ref: $Format:%D$ */ +/* git commit: $Format:%H$ */ +/* commit time: $Format:%ai$ */ |