]> granicus.if.org Git - libvpx/commitdiff
Use __asm__ __volatile__ with gcc
authorJohann <johannkoenig@google.com>
Thu, 8 May 2014 18:16:07 +0000 (11:16 -0700)
committerJohann <johannkoenig@google.com>
Thu, 8 May 2014 18:16:07 +0000 (11:16 -0700)
Some version of clang refuse 'asm volatile'

Change-Id: I79d909ac8ae3c04b608f20c6f10fa79b7f9fc8e0

vp8/encoder/x86/quantize_ssse3.c

index 9b4471d4f11f79f6916dc2057c4cb1f858389d0f..448217ff412f32f933e955b5c641c88abf519c3d 100644 (file)
@@ -27,7 +27,11 @@ static int bsr(int mask) {
 #else
 static int bsr(int mask) {
   int eob;
+#if defined(__GNUC__) && __GNUC__
+  __asm__ __volatile__("bsr %1, %0" : "=r" (eob) : "r" (mask) : "flags");
+#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
   asm volatile("bsr %1, %0" : "=r" (eob) : "r" (mask) : "flags");
+#endif
   eob++;
   if (mask == 0)
     eob = 0;