ARM: ARMv6 optimised MULH

Originally committed as revision 14243 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Måns Rullgård 2008-07-15 19:06:25 +00:00
parent 6651ce17b8
commit 7995962d4b
1 changed files with 10 additions and 0 deletions

View File

@ -33,10 +33,20 @@
hi; })
#endif
#ifdef HAVE_ARMV6
static inline av_const int MULH(int a, int b)
{
int r;
asm ("smmul %0, %1, %2" : "=r"(r) : "r"(a), "r"(b));
return r;
}
#define MULH MULH
#else
#define MULH(a, b) \
({ int lo, hi;\
asm ("smull %0, %1, %2, %3" : "=&r"(lo), "=&r"(hi) : "r"(b), "r"(a));\
hi; })
#endif
#if defined(HAVE_ARMV5TE)