[Spice-commits] common/gl_utils.h

Gerd Hoffmann kraxel at kemper.freedesktop.org
Mon May 3 02:37:21 PDT 2010


 common/gl_utils.h |   21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

New commits:
commit a5cf90922eb4752fcfe2de17ac7c458b26b7d430
Author: Gerd Hoffmann <kraxel at redhat.com>
Date:   Mon May 3 11:32:35 2010 +0200

    Add C version of find_msb()
    
    This patch allows people to build the spice-client on any 32bit/64bit
    architecture.
    
    by Bryan Stillwell <bryan at bokeoa.com>

diff --git a/common/gl_utils.h b/common/gl_utils.h
index eeb9f02..eecff26 100644
--- a/common/gl_utils.h
+++ b/common/gl_utils.h
@@ -60,7 +60,7 @@ found:
     return r + 1;
 }
 
-#else
+#elif defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__))
 static inline int find_msb(unsigned int val)
 {
     int ret;
@@ -73,6 +73,25 @@ static inline int find_msb(unsigned int val)
     return ret + 1;
 }
 
+#else
+static inline int find_msb(unsigned int val)
+{
+    signed char index = 31;
+
+    if(val == 0) {
+        return 0;
+    }
+
+    do {
+        if(val & 0x80000000) {
+            break;
+        }
+        val <<= 1;
+    } while(--index >= 0);
+
+    return index+1;
+}
+
 #endif
 
 static inline int gl_get_to_power_two(unsigned int val)


More information about the Spice-commits mailing list