From: Alex Converse Date: Mon, 3 Feb 2014 20:12:01 +0000 (-0800) Subject: INLINE and reimplement get_unsigned_bits(). X-Git-Tag: v1.4.0~2519^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ffd3d4834b5a0f081b3910428408cd6291465e6c;p=platform%2Fupstream%2Flibvpx.git INLINE and reimplement get_unsigned_bits(). The new implementation disagrees when the argument is equal to 2**n but that is never called in practice and based on how it is used the new implementation is correct in that case. Change-Id: Ifbac4ad87d459fe6bd2fd0f400c0340f96617342 --- diff --git a/vp9/common/vp9_common.h b/vp9/common/vp9_common.h index 69964da..2dccb70 100644 --- a/vp9/common/vp9_common.h +++ b/vp9/common/vp9_common.h @@ -18,6 +18,7 @@ #include "./vpx_config.h" #include "vpx_mem/vpx_mem.h" #include "vpx/vpx_integer.h" +#include "vp9/common/vp9_systemdependent.h" #ifdef __cplusplus extern "C" { @@ -59,16 +60,8 @@ static INLINE double fclamp(double value, double low, double high) { return value < low ? low : (value > high ? high : value); } -static int get_unsigned_bits(unsigned int num_values) { - int cat = 0; - if (num_values <= 1) - return 0; - num_values--; - while (num_values > 0) { - cat++; - num_values >>= 1; - } - return cat; +static INLINE int get_unsigned_bits(unsigned int num_values) { + return num_values > 0 ? get_msb(num_values) + 1 : 0; } #if CONFIG_DEBUG