From: Johann Date: Thu, 8 May 2014 18:16:07 +0000 (-0700) Subject: Use __asm__ __volatile__ with gcc X-Git-Tag: v1.4.0~1634 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e1f2113af728f1979194e2ab6295ee109bcf4638;p=libvpx Use __asm__ __volatile__ with gcc Some version of clang refuse 'asm volatile' Change-Id: I79d909ac8ae3c04b608f20c6f10fa79b7f9fc8e0 --- diff --git a/vp8/encoder/x86/quantize_ssse3.c b/vp8/encoder/x86/quantize_ssse3.c index 9b4471d4f..448217ff4 100644 --- a/vp8/encoder/x86/quantize_ssse3.c +++ b/vp8/encoder/x86/quantize_ssse3.c @@ -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;