From 8f4d0d48b9cb995bae3b26efc2ab270609a03e8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A5ns=20Rullg=C3=A5rd?= Date: Thu, 6 Nov 2008 01:33:20 +0000 Subject: [PATCH] ARM: change MULL() macro to inline function Originally committed as revision 15780 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/armv4l/mathops.h | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/libavcodec/armv4l/mathops.h b/libavcodec/armv4l/mathops.h index 901cccb834..c30ab3391e 100644 --- a/libavcodec/armv4l/mathops.h +++ b/libavcodec/armv4l/mathops.h @@ -26,14 +26,17 @@ #include "libavutil/common.h" #ifdef FRAC_BITS -# define MULL(a, b) \ - ({ int lo, hi;\ - __asm__("smull %0, %1, %2, %3 \n\t"\ - "mov %0, %0, lsr %4\n\t"\ - "add %1, %0, %1, lsl %5\n\t"\ - : "=&r"(lo), "=&r"(hi)\ - : "r"(b), "r"(a), "i"(FRAC_BITS), "i"(32-FRAC_BITS));\ - hi; }) +# define MULL MULL +static inline av_const int MULL(int a, int b) +{ + int lo, hi; + __asm__("smull %0, %1, %2, %3 \n\t" + "mov %0, %0, lsr %4 \n\t" + "add %1, %0, %1, lsl %5 \n\t" + : "=&r"(lo), "=&r"(hi) + : "r"(b), "r"(a), "i"(FRAC_BITS), "i"(32-FRAC_BITS)); + return hi; +} #endif #ifdef HAVE_ARMV6