summaryrefslogtreecommitdiff
path: root/lib/math/int_log.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/math/int_log.c')
-rw-r--r--lib/math/int_log.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/math/int_log.c b/lib/math/int_log.c
index 322df25a22d6..ea98fc0b3fe2 100644
--- a/lib/math/int_log.c
+++ b/lib/math/int_log.c
@@ -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 */