Mercurial > libavcodec.hg
changeset 8113:aa55fd152068 libavcodec
ARM: change MULH() macro to inline function
author | mru |
---|---|
date | Thu, 06 Nov 2008 01:33:23 +0000 |
parents | 954dd6e341ce |
children | 1231a7ddd932 |
files | armv4l/mathops.h |
diffstat | 1 files changed, 7 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/armv4l/mathops.h Thu Nov 06 01:33:20 2008 +0000 +++ b/armv4l/mathops.h Thu Nov 06 01:33:23 2008 +0000 @@ -39,6 +39,7 @@ } #endif +#define MULH MULH #ifdef HAVE_ARMV6 static inline av_const int MULH(int a, int b) { @@ -46,12 +47,13 @@ __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; }) +static inline av_const int MULH(int a, int b) +{ + int lo, hi; + __asm__ ("smull %0, %1, %2, %3" : "=&r"(lo), "=&r"(hi) : "r"(b), "r"(a)); + return hi; +} #endif static inline av_const int64_t MUL64(int a, int b)