Mesa (mesa_7_5_branch): mesa: Fix logbase2.
Jose Fonseca
jrfonseca at kemper.freedesktop.org
Thu Jul 16 18:20:35 UTC 2009
Module: Mesa
Branch: mesa_7_5_branch
Commit: d4e6df9ab6e7b707278e3739abee776418c6f527
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d4e6df9ab6e7b707278e3739abee776418c6f527
Author: José Fonseca <jfonseca at vmware.com>
Date: Thu Jul 16 19:20:25 2009 +0100
mesa: Fix logbase2.
It was providing 1 too many for non power two values.
---
src/mesa/state_tracker/st_cb_texture.c | 12 +++++-------
1 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c
index 22685bd..15f84b6 100644
--- a/src/mesa/state_tracker/st_cb_texture.c
+++ b/src/mesa/state_tracker/st_cb_texture.c
@@ -237,14 +237,12 @@ do_memcpy(void *dest, const void *src, size_t n)
}
-static int
-logbase2(int n)
+static INLINE unsigned
+logbase2(unsigned n)
{
- GLint i = 1, log2 = 0;
- while (n > i) {
- i *= 2;
- log2++;
- }
+ unsigned log2 = 0;
+ while (n >>= 1)
+ ++log2;
return log2;
}
More information about the mesa-commit
mailing list