From f8c5adaf9c26b6aabfa2d9165e92857171c95fb6 Mon Sep 17 00:00:00 2001 From: Måns Rullgård Date: Wed, 17 Dec 2008 20:04:39 +0000 Subject: ARM: make FASTDIV() an inline function Originally committed as revision 16193 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavutil/internal.h | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) (limited to 'libavutil') diff --git a/libavutil/internal.h b/libavutil/internal.h index 5615c06c5f..535791a523 100644 --- a/libavutil/internal.h +++ b/libavutil/internal.h @@ -149,16 +149,13 @@ static inline av_const int FASTDIV(int a, int b) return r; } #elif defined(ARCH_ARM) -# define FASTDIV(a,b) \ - ({\ - int ret,dmy;\ - __asm__ volatile(\ - "umull %1, %0, %2, %3"\ - :"=&r"(ret),"=&r"(dmy)\ - :"r"(a),"r"(ff_inverse[b])\ - );\ - ret;\ - }) +static inline av_const int FASTDIV(int a, int b) +{ + int r, t; + __asm__ volatile ("umull %1, %0, %2, %3" + : "=&r"(r), "=&r"(t) : "r"(a), "r"(ff_inverse[b])); + return r; +} #elif defined(CONFIG_FASTDIV) # define FASTDIV(a,b) ((uint32_t)((((uint64_t)a)*ff_inverse[b])>>32)) #else -- cgit v1.2.3