#include "avcodec.h"
#include "bitstream.h"
#include "golomb.h"
+#include "mathops.h"
#include "cavs.h"
#include "cavsdata.h"
#include "simple_idct.h"
#include "faandct.h"
#include "faanidct.h"
+#include "mathops.h"
#include "h263.h"
#include "snow.h"
#include "dsputil.h"
#include "rangecoder.h"
#include "golomb.h"
+#include "mathops.h"
#define MAX_PLANES 4
#define CONTEXT_SIZE 32
#include "mpegvideo.h"
#include "h263data.h"
#include "mpeg4data.h"
+#include "mathops.h"
//#undef NDEBUG
//#include <assert.h>
#include "h264data.h"
#include "h264_parser.h"
#include "golomb.h"
+#include "mathops.h"
#include "rectangle.h"
#include "vdpau_internal.h"
#include "avcodec.h"
#include "bitstream.h"
#include "dsputil.h"
+#include "mathops.h"
#define VLC_BITS 11
#include "avcodec.h"
#include "bitstream.h"
#include "golomb.h"
+#include "mathops.h"
#include "mjpeg.h"
#include "mjpegdec.h"
#include "jpegls.h"
#include "avcodec.h"
#include "bitstream.h"
#include "golomb.h"
+#include "mathops.h"
#include "dsputil.h"
#include "mjpeg.h"
#include "jpegls.h"
#include "avcodec.h"
#include "bitstream.h"
#include "golomb.h"
+#include "mathops.h"
enum LOCO_MODE {LOCO_UNKN=0, LOCO_CYUY2=-1, LOCO_CRGB=-2, LOCO_CRGBA=-3, LOCO_CYV12=-4,
LOCO_YUY2=1, LOCO_UYVY=2, LOCO_RGB=3, LOCO_RGBA=4, LOCO_YV12=5};
# define MLS16(rt, ra, rb) ((rt) -= (ra) * (rb))
#endif
+/* median of 3 */
+#ifndef mid_pred
+#define mid_pred mid_pred
+static inline av_const int mid_pred(int a, int b, int c)
+{
+#if 0
+ int t= (a-b)&((a-b)>>31);
+ a-=t;
+ b+=t;
+ b-= (b-c)&((b-c)>>31);
+ b+= (a-b)&((a-b)>>31);
+
+ return b;
+#else
+ if(a>b){
+ if(c>b){
+ if(c>a) b=a;
+ else b=c;
+ }
+ }else{
+ if(b>c){
+ if(c>a) b=c;
+ else b=a;
+ }
+ }
+ return b;
+#endif
+}
+#endif
+
#endif /* AVCODEC_MATHOPS_H */
#include <limits.h>
#include "avcodec.h"
#include "dsputil.h"
+#include "mathops.h"
#include "mpegvideo.h"
#undef NDEBUG
#include "roqvideo.h"
#include "bytestream.h"
#include "elbg.h"
+#include "mathops.h"
#define CHROMA_BIAS 1
#include "dsputil.h"
#include "mpegvideo.h"
#include "golomb.h"
+#include "mathops.h"
#include "rectangle.h"
#include "rv34vlc.h"
#include "snow.h"
#include "rangecoder.h"
+#include "mathops.h"
#include "mpegvideo.h"
#include "avcodec.h"
#include "dsputil.h"
#include "mpegvideo.h"
+#include "mathops.h"
#include "svq1.h"
#include "msmpeg4data.h"
#include "unary.h"
#include "simple_idct.h"
+#include "mathops.h"
#undef NDEBUG
#include <assert.h>
#include "avcodec.h"
#include "dsputil.h"
#include "mpegvideo.h"
+#include "mathops.h"
#include "msmpeg4.h"
#include "msmpeg4data.h"
#include "intrax8.h"
#include "libavutil/x86_cpu.h"
#include "libavcodec/dsputil.h"
#include "libavcodec/mpegvideo.h"
+#include "libavcodec/mathops.h"
#include "dsputil_mmx.h"
#ifndef AVCODEC_X86_MATHOPS_H
#define AVCODEC_X86_MATHOPS_H
+#include "config.h"
+#include "libavutil/common.h"
+
#define MULL(ra, rb, shift) \
({ int rt, dummy; __asm__ (\
"imull %3 \n\t"\
__asm__ ("imull %2\n\t" : "=A"(rt) : "a" ((int)ra), "g" ((int)rb));\
rt; })
+#if HAVE_CMOV
+/* median of 3 */
+#define mid_pred mid_pred
+static inline av_const int mid_pred(int a, int b, int c)
+{
+ int i=b;
+ __asm__ volatile(
+ "cmp %2, %1 \n\t"
+ "cmovg %1, %0 \n\t"
+ "cmovg %2, %1 \n\t"
+ "cmp %3, %1 \n\t"
+ "cmovl %3, %1 \n\t"
+ "cmp %1, %0 \n\t"
+ "cmovg %1, %0 \n\t"
+ :"+&r"(i), "+&r"(a)
+ :"r"(b), "r"(c)
+ );
+ return i;
+}
+#endif
+
#endif /* AVCODEC_X86_MATHOPS_H */
return n;
}
-/* median of 3 */
-static inline av_const int mid_pred(int a, int b, int c)
-{
-#if HAVE_CMOV
- int i=b;
- __asm__ volatile(
- "cmp %2, %1 \n\t"
- "cmovg %1, %0 \n\t"
- "cmovg %2, %1 \n\t"
- "cmp %3, %1 \n\t"
- "cmovl %3, %1 \n\t"
- "cmp %1, %0 \n\t"
- "cmovg %1, %0 \n\t"
- :"+&r"(i), "+&r"(a)
- :"r"(b), "r"(c)
- );
- return i;
-#elif 0
- int t= (a-b)&((a-b)>>31);
- a-=t;
- b+=t;
- b-= (b-c)&((b-c)>>31);
- b+= (a-b)&((a-b)>>31);
-
- return b;
-#else
- if(a>b){
- if(c>b){
- if(c>a) b=a;
- else b=c;
- }
- }else{
- if(b>c){
- if(c>a) b=c;
- else b=a;
- }
- }
- return b;
-#endif
-}
-
/**
* clip a signed integer value into the amin-amax range
* @param a value to clip