Move COPY3_IF_LT to lavc/mathops.h
authorMåns Rullgård <mans@mansr.com>
Wed, 20 Jan 2010 06:01:54 +0000 (06:01 +0000)
committerMåns Rullgård <mans@mansr.com>
Wed, 20 Jan 2010 06:01:54 +0000 (06:01 +0000)
This obscure macro is only used in motion_est.c so having it in lavc
makes more sense.  See discussion here:
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-November/056561.html

Originally committed as revision 21346 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/mathops.h
libavcodec/x86/mathops.h
libavutil/internal.h

index 4e24350..5782459 100644 (file)
@@ -116,5 +116,14 @@ static inline av_const int sign_extend(int val, unsigned bits)
 }
 #endif
 
+#ifndef COPY3_IF_LT
+#define COPY3_IF_LT(x, y, a, b, c, d)\
+if ((y) < (x)) {\
+    (x) = (y);\
+    (a) = (b);\
+    (c) = (d);\
+}
+#endif
+
 #endif /* AVCODEC_MATHOPS_H */
 
index a66c601..691a200 100644 (file)
@@ -66,4 +66,16 @@ static inline av_const int mid_pred(int a, int b, int c)
 }
 #endif
 
+#if HAVE_CMOV
+#define COPY3_IF_LT(x, y, a, b, c, d)\
+__asm__ volatile(\
+    "cmpl  %0, %3       \n\t"\
+    "cmovl %3, %0       \n\t"\
+    "cmovl %4, %1       \n\t"\
+    "cmovl %5, %2       \n\t"\
+    : "+&r" (x), "+&r" (a), "+r" (c)\
+    : "r" (y), "r" (b), "r" (d)\
+);
+#endif
+
 #endif /* AVCODEC_X86_MATHOPS_H */
index ac7f152..f0ea232 100644 (file)
@@ -156,25 +156,6 @@ static inline av_const unsigned int ff_sqrt(unsigned int a)
             level = (level ^ mask) - mask;
 #endif
 
-#if HAVE_CMOV
-#define COPY3_IF_LT(x, y, a, b, c, d)\
-__asm__ volatile(\
-    "cmpl  %0, %3       \n\t"\
-    "cmovl %3, %0       \n\t"\
-    "cmovl %4, %1       \n\t"\
-    "cmovl %5, %2       \n\t"\
-    : "+&r" (x), "+&r" (a), "+r" (c)\
-    : "r" (y), "r" (b), "r" (d)\
-);
-#else
-#define COPY3_IF_LT(x, y, a, b, c, d)\
-if ((y) < (x)) {\
-    (x) = (y);\
-    (a) = (b);\
-    (c) = (d);\
-}
-#endif
-
 /* avoid usage of dangerous/inappropriate system functions */
 #undef  malloc
 #define malloc please_use_av_malloc