Commit 4d5effc4 authored by mru's avatar mru

Move COPY3_IF_LT to lavc/mathops.h

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

git-svn-id: file:///var/local/repositories/ffmpeg/trunk@21346 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent ace7af37
......@@ -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 */
......@@ -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 */
......@@ -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
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment