changeset 7255:84dd52687931 libavcodec

mathops: add MAC64, MLS64, and MLS16 MAC64: 64 += 32 x 32 (bits) MLS64: 64 -= 32 x 32 MLS16: 32 -= 16 x 16
author mru
date Sun, 13 Jul 2008 12:22:57 +0000
parents e100cf54e11e
children 7c13d54f389d
files mathops.h
diffstat 1 files changed, 12 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/mathops.h	Sun Jul 13 00:07:43 2008 +0000
+++ b/mathops.h	Sun Jul 13 12:22:57 2008 +0000
@@ -61,6 +61,14 @@
 #   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 @@
 #   define MUL16(ra, rb) ((ra) * (rb))
 #endif
 
+#ifndef MLS16
+#   define MLS16(rt, ra, rb) ((rt) -= (ra) * (rb))
+#endif
+
 #endif /* FFMPEG_MATHOPS_H */