mirror of https://git.ffmpeg.org/ffmpeg.git
ARM: make FASTDIV() an inline function
Originally committed as revision 16193 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
6c3fca6479
commit
f8c5adaf9c
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue