mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
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 Originally committed as revision 21346 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
bec358d683
commit
5e7dfb7de1
@ -116,5 +116,14 @@ static inline av_const int sign_extend(int val, unsigned bits)
|
|||||||
}
|
}
|
||||||
#endif
|
#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 */
|
#endif /* AVCODEC_MATHOPS_H */
|
||||||
|
|
||||||
|
@ -66,4 +66,16 @@ static inline av_const int mid_pred(int a, int b, int c)
|
|||||||
}
|
}
|
||||||
#endif
|
#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 */
|
#endif /* AVCODEC_X86_MATHOPS_H */
|
||||||
|
@ -156,25 +156,6 @@ static inline av_const unsigned int ff_sqrt(unsigned int a)
|
|||||||
level = (level ^ mask) - mask;
|
level = (level ^ mask) - mask;
|
||||||
#endif
|
#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 */
|
/* avoid usage of dangerous/inappropriate system functions */
|
||||||
#undef malloc
|
#undef malloc
|
||||||
#define malloc please_use_av_malloc
|
#define malloc please_use_av_malloc
|
||||||
|
Loading…
Reference in New Issue
Block a user