@@ -91,7 +91,7 @@ unsigned int intlog2(u32 value)
* so we would use the entry 0x18
*/
significand = value << (31 - msb);
- logentry = (significand >> 23) & 0xff;
+ logentry = (significand >> 23) % ARRAY_SIZE(logtable);
/**
* last step we do is interpolation because of the
@@ -109,7 +109,7 @@ unsigned int intlog2(u32 value)
* logtable_next is 256
*/
interpolation = ((significand & 0x7fffff) *
- ((logtable[(logentry + 1) & 0xff] -
+ ((logtable[(logentry + 1) % ARRAY_SIZE(logtable)] -
logtable[logentry]) & 0xffff)) >> 15;
/* now we return the result */
Use ARRAY_SIZE(logtable) where makes sense. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> --- lib/math/int_log.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)