From ffa978f15779e304d442e335b0d0b5e53d864aef Mon Sep 17 00:00:00 2001 From: Måns Rullgård Date: Sun, 13 Jul 2008 12:22:57 +0000 Subject: mathops: add MAC64, MLS64, and MLS16 MAC64: 64 += 32 x 32 (bits) MLS64: 64 -= 32 x 32 MLS16: 32 -= 16 x 16 Originally committed as revision 14198 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/mathops.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'libavcodec/mathops.h') diff --git a/libavcodec/mathops.h b/libavcodec/mathops.h index 71a026f99b..3b9bfeb09f 100644 --- a/libavcodec/mathops.h +++ b/libavcodec/mathops.h @@ -61,6 +61,14 @@ static av_always_inline int MULH(int a, int b){ # define MUL64(a,b) ((int64_t)(a) * (int64_t)(b)) #endif +#ifndef MAC64 +# define MAC64(d, a, b) ((d) += MUL64(a, b)) +#endif + +#ifndef MLS64 +# define MLS64(d, a, b) ((d) -= MUL64(a, b)) +#endif + /* signed 16x16 -> 32 multiply add accumulate */ #ifndef MAC16 # define MAC16(rt, ra, rb) rt += (ra) * (rb) @@ -71,5 +79,9 @@ static av_always_inline int MULH(int a, int b){ # define MUL16(ra, rb) ((ra) * (rb)) #endif +#ifndef MLS16 +# define MLS16(rt, ra, rb) ((rt) -= (ra) * (rb)) +#endif + #endif /* FFMPEG_MATHOPS_H */ -- cgit v1.2.3