summaryrefslogtreecommitdiffstats
path: root/common/bitops.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/bitops.h')
-rw-r--r--common/bitops.h28
1 files changed, 14 insertions, 14 deletions
diff --git a/common/bitops.h b/common/bitops.h
index 449409bd..bdd862a3 100644
--- a/common/bitops.h
+++ b/common/bitops.h
@@ -27,7 +27,20 @@
extern "C" {
#endif
-#if defined(WIN32) && !defined(_WIN64)
+#if defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__))
+static inline int spice_bit_find_msb(unsigned int val)
+{
+ int ret;
+
+ asm ("bsrl %1,%0\n\t"
+ "jnz 1f\n\t"
+ "movl $-1,%0\n"
+ "1:"
+ : "=r"(ret) : "r"(val));
+ return ret + 1;
+}
+
+#elif defined(WIN32) && !defined(_WIN64)
static INLINE int spice_bit_find_msb(uint32_t val)
{
uint32_t r;
@@ -42,19 +55,6 @@ found:
return r + 1;
}
-#elif defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__))
-static inline int spice_bit_find_msb(unsigned int val)
-{
- int ret;
-
- asm ("bsrl %1,%0\n\t"
- "jnz 1f\n\t"
- "movl $-1,%0\n"
- "1:"
- : "=r"(ret) : "r"(val));
- return ret + 1;
-}
-
#else
static INLINE int spice_bit_find_msb(unsigned int val)
{