summaryrefslogtreecommitdiffstats
path: root/libmpcodecs
diff options
context:
space:
mode:
authorUoti Urpala <uau@glyph.nonexistent.invalid>2009-01-19 00:04:43 +0200
committerUoti Urpala <uau@glyph.nonexistent.invalid>2009-01-19 00:04:43 +0200
commit79e1aa7cc7a9ac695c3af361bca72013ef272885 (patch)
treecc52764dfa4fab2cfc74c6aee5d71b27edbf014b /libmpcodecs
parent3ba97da297e1e1a5ca9dabdda60cc6a62f77affc (diff)
parent39cb032fd184a62416f1e62d26e05576cfd8dbe4 (diff)
downloadmpv-79e1aa7cc7a9ac695c3af361bca72013ef272885.tar.bz2
mpv-79e1aa7cc7a9ac695c3af361bca72013ef272885.tar.xz
Merge svn changes up to r28341
Conflicts: configure libmpcodecs/native/rtjpegn.c
Diffstat (limited to 'libmpcodecs')
-rw-r--r--libmpcodecs/dec_video.c2
-rw-r--r--libmpcodecs/native/rtjpegn.c53
-rw-r--r--libmpcodecs/pullup.c8
-rw-r--r--libmpcodecs/vd_libmpeg2.c4
-rw-r--r--libmpcodecs/vf_decimate.c4
-rw-r--r--libmpcodecs/vf_divtc.c4
-rw-r--r--libmpcodecs/vf_eq.c4
-rw-r--r--libmpcodecs/vf_eq2.c4
-rw-r--r--libmpcodecs/vf_filmdint.c10
-rw-r--r--libmpcodecs/vf_fspp.c14
-rw-r--r--libmpcodecs/vf_halfpack.c4
-rw-r--r--libmpcodecs/vf_hue.c2
-rw-r--r--libmpcodecs/vf_ilpack.c12
-rw-r--r--libmpcodecs/vf_ivtc.c4
-rw-r--r--libmpcodecs/vf_noise.c14
-rw-r--r--libmpcodecs/vf_pp7.c8
-rw-r--r--libmpcodecs/vf_scale.c2
-rw-r--r--libmpcodecs/vf_spp.c10
-rw-r--r--libmpcodecs/vf_tfields.c12
-rw-r--r--libmpcodecs/vf_unsharp.c4
-rw-r--r--libmpcodecs/vf_uspp.c6
-rw-r--r--libmpcodecs/vf_yadif.c8
22 files changed, 95 insertions, 98 deletions
diff --git a/libmpcodecs/dec_video.c b/libmpcodecs/dec_video.c
index ef44399e82..49ee002bf4 100644
--- a/libmpcodecs/dec_video.c
+++ b/libmpcodecs/dec_video.c
@@ -419,7 +419,7 @@ void *decode_video(sh_video_t *sh_video, unsigned char *start, int in_size,
//------------------------ frame decoded. --------------------
-#ifdef HAVE_MMX
+#if HAVE_MMX
// some codecs are broken, and doesn't restore MMX state :(
// it happens usually with broken/damaged files.
if (gCpuCaps.has3DNow) {
diff --git a/libmpcodecs/native/rtjpegn.c b/libmpcodecs/native/rtjpegn.c
index be24f12851..b97e507817 100644
--- a/libmpcodecs/native/rtjpegn.c
+++ b/libmpcodecs/native/rtjpegn.c
@@ -26,14 +26,11 @@
#include <string.h>
#include "config.h"
-#ifdef HAVE_MMX
-#define MMX
-#endif
#include "mpbswap.h"
#include "rtjpegn.h"
-#ifdef MMX
+#if HAVE_MMX
#include "mmx.h"
#endif
@@ -68,7 +65,7 @@ static const __u64 RTjpeg_aan_tab[64]={
1184891264ULL, 1643641088ULL, 1548224000ULL, 1393296000ULL, 1184891264ULL, 931136000ULL, 641204288ULL, 326894240ULL,
};
-#ifndef MMX
+#if !HAVE_MMX
static __s32 RTjpeg_ws[64+31];
#endif
__u8 RTjpeg_alldata[2*64+4*64+4*64+4*64+4*64+32];
@@ -88,7 +85,7 @@ static int RTjpeg_Ysize, RTjpeg_Csize;
static __s16 *RTjpeg_old=NULL;
-#ifdef MMX
+#if HAVE_MMX
mmx_t RTjpeg_lmask;
mmx_t RTjpeg_cmask;
#else
@@ -541,7 +538,7 @@ static int RTjpeg_s2b(__s16 *data, __s8 *strm, __u8 bt8, __u32 *qtbl)
}
#endif
-#if defined(MMX)
+#if HAVE_MMX
static void RTjpeg_quant_init(void)
{
int i;
@@ -610,7 +607,7 @@ static void RTjpeg_quant(__s16 *block, __s32 *qtbl)
/*
* Perform the forward DCT on one block of samples.
*/
-#ifdef MMX
+#if HAVE_MMX
static mmx_t RTjpeg_C4 ={0x2D412D412D412D41LL};
static mmx_t RTjpeg_C6 ={0x187E187E187E187ELL};
static mmx_t RTjpeg_C2mC6={0x22A322A322A322A3LL};
@@ -642,7 +639,7 @@ static void RTjpeg_dct_init(void)
static void RTjpeg_dctY(__u8 *idata, __s16 *odata, int rskip)
{
-#ifndef MMX
+#if !HAVE_MMX
__s32 tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
__s32 tmp10, tmp11, tmp12, tmp13;
__s32 z1, z2, z3, z4, z5, z11, z13;
@@ -1570,7 +1567,7 @@ static void RTjpeg_idct_init(void)
static void RTjpeg_idct(__u8 *odata, __s16 *data, int rskip)
{
-#ifdef MMX
+#if HAVE_MMX
static mmx_t fix_141 = {0x5a825a825a825a82LL};
static mmx_t fix_184n261 = {0xcf04cf04cf04cf04LL};
@@ -2864,7 +2861,7 @@ int RTjpeg_compressYUV420(__s8 *sp, unsigned char *bp)
register __s8 * bp3 = bp2 + (RTjpeg_Csize>>1);
register int i, j, k;
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
sb=sp;
@@ -2904,7 +2901,7 @@ int RTjpeg_compressYUV420(__s8 *sp, unsigned char *bp)
bp3+=RTjpeg_width<<2;
}
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
return (sp-sb);
@@ -2917,7 +2914,7 @@ int RTjpeg_compressYUV422(__s8 *sp, unsigned char *bp)
register __s8 * bp3 = bp2 + RTjpeg_Csize;
register int i, j, k;
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
sb=sp;
@@ -2948,7 +2945,7 @@ int RTjpeg_compressYUV422(__s8 *sp, unsigned char *bp)
bp3+=RTjpeg_width<<2;
}
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
return (sp-sb);
@@ -2959,7 +2956,7 @@ int RTjpeg_compress8(__s8 *sp, unsigned char *bp)
__s8 * sb;
int i, j;
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
@@ -2976,7 +2973,7 @@ int RTjpeg_compress8(__s8 *sp, unsigned char *bp)
bp+=RTjpeg_width;
}
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
return (sp-sb);
@@ -2988,7 +2985,7 @@ void RTjpeg_decompressYUV422(__s8 *sp, __u8 *bp)
register __s8 * bp3 = bp2 + (RTjpeg_Csize);
int i, j,k;
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
@@ -3025,7 +3022,7 @@ void RTjpeg_decompressYUV422(__s8 *sp, __u8 *bp)
bp2+=RTjpeg_width<<2;
bp3+=RTjpeg_width<<2;
}
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
}
@@ -3037,7 +3034,7 @@ void RTjpeg_decompressYUV420(__s8 *sp, __u8 *bp)
register __s8 * bp3 = bp2 + (RTjpeg_Csize>>1);
int i, j,k;
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
@@ -3087,7 +3084,7 @@ void RTjpeg_decompressYUV420(__s8 *sp, __u8 *bp)
bp2+=RTjpeg_width<<2;
bp3+=RTjpeg_width<<2;
}
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
}
@@ -3096,7 +3093,7 @@ void RTjpeg_decompress8(__s8 *sp, __u8 *bp)
{
int i, j;
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
@@ -3141,7 +3138,7 @@ void RTjpeg_init_mcompress(void)
memset(RTjpeg_old, 0, ((4*RTjpeg_width*RTjpeg_height)));
}
-#ifdef MMX
+#if HAVE_MMX
static int RTjpeg_bcomp(__s16 *old, mmx_t *mask)
{
@@ -3218,7 +3215,7 @@ int RTjpeg_mcompressYUV420(__s8 *sp, unsigned char *bp, __u16 lmask, __u16 cmask
register __s8 * bp3 = bp2 + (RTjpeg_Csize>>1);
register int i, j, k;
-#ifdef MMX
+#if HAVE_MMX
emms();
RTjpeg_lmask.uq=((__u64)lmask<<48)|((__u64)lmask<<32)|((__u64)lmask<<16)|lmask;
RTjpeg_cmask.uq=((__u64)cmask<<48)|((__u64)cmask<<32)|((__u64)cmask<<16)|cmask;
@@ -3294,7 +3291,7 @@ int RTjpeg_mcompressYUV420(__s8 *sp, unsigned char *bp, __u16 lmask, __u16 cmask
bp3+=RTjpeg_width<<2;
}
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
return (sp-sb);
@@ -3309,7 +3306,7 @@ int RTjpeg_mcompressYUV422(__s8 *sp, unsigned char *bp, __u16 lmask, __u16 cmask
register __s8 * bp3;
register int i, j, k;
-#ifdef MMX
+#if HAVE_MMX
emms();
RTjpeg_lmask.uq=((__u64)lmask<<48)|((__u64)lmask<<32)|((__u64)lmask<<16)|lmask;
RTjpeg_cmask.uq=((__u64)cmask<<48)|((__u64)cmask<<32)|((__u64)cmask<<16)|cmask;
@@ -3371,7 +3368,7 @@ int RTjpeg_mcompressYUV422(__s8 *sp, unsigned char *bp, __u16 lmask, __u16 cmask
bp3+=RTjpeg_width<<2;
}
printf ("%d\n", block - RTjpeg_old);
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
return (sp-sb);
@@ -3383,7 +3380,7 @@ int RTjpeg_mcompress8(__s8 *sp, unsigned char *bp, __u16 lmask)
__s16 *block;
int i, j;
-#ifdef MMX
+#if HAVE_MMX
emms();
RTjpeg_lmask.uq=((__u64)lmask<<48)|((__u64)lmask<<32)|((__u64)lmask<<16)|lmask;
#else
@@ -3409,7 +3406,7 @@ int RTjpeg_mcompress8(__s8 *sp, unsigned char *bp, __u16 lmask)
}
bp+=RTjpeg_width<<3;
}
-#ifdef MMX
+#if HAVE_MMX
emms();
#endif
return (sp-sb);
diff --git a/libmpcodecs/pullup.c b/libmpcodecs/pullup.c
index f71bf790ce..b4b8f2c17d 100644
--- a/libmpcodecs/pullup.c
+++ b/libmpcodecs/pullup.c
@@ -9,8 +9,8 @@
-#ifdef ARCH_X86
-#ifdef HAVE_MMX
+#if ARCH_X86
+#if HAVE_MMX
static int diff_y_mmx(unsigned char *a, unsigned char *b, int s)
{
int ret;
@@ -767,8 +767,8 @@ void pullup_init_context(struct pullup_context *c)
c->diff = diff_y;
c->comb = licomb_y;
c->var = var_y;
-#ifdef ARCH_X86
-#ifdef HAVE_MMX
+#if ARCH_X86
+#if HAVE_MMX
if (c->cpu & PULLUP_CPU_MMX) {
c->diff = diff_y_mmx;
c->comb = licomb_y_mmx;
diff --git a/libmpcodecs/vd_libmpeg2.c b/libmpcodecs/vd_libmpeg2.c
index 7505768dee..ef7671e3ce 100644
--- a/libmpcodecs/vd_libmpeg2.c
+++ b/libmpcodecs/vd_libmpeg2.c
@@ -78,12 +78,12 @@ static int init(sh_video_t *sh){
accel |= MPEG2_ACCEL_X86_SSE2;
if(gCpuCaps.hasAltiVec)
accel |= MPEG2_ACCEL_PPC_ALTIVEC;
- #ifdef ARCH_ALPHA
+ #if ARCH_ALPHA
accel |= MPEG2_ACCEL_ALPHA;
#elif ARCH_ARM
accel |= MPEG2_ACCEL_ARM;
#endif
- #ifdef HAVE_MVI
+ #if HAVE_MVI
accel |= MPEG2_ACCEL_ALPHA_MVI;
#elif HAVE_VIS
accel |= MPEG2_ACCEL_SPARC_VIS;
diff --git a/libmpcodecs/vf_decimate.c b/libmpcodecs/vf_decimate.c
index 81b58cccb7..36afff3b7d 100644
--- a/libmpcodecs/vf_decimate.c
+++ b/libmpcodecs/vf_decimate.c
@@ -19,7 +19,7 @@ struct vf_priv_s {
int max, last, cnt;
};
-#ifdef HAVE_MMX
+#if HAVE_MMX
static int diff_MMX(unsigned char *old, unsigned char *new, int os, int ns)
{
volatile short out[4];
@@ -164,7 +164,7 @@ static int open(vf_instance_t *vf, char* args)
p->frac = 0.33;
if (args) sscanf(args, "%d:%d:%d:%f", &p->max, &p->hi, &p->lo, &p->frac);
diff = diff_C;
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX) diff = diff_MMX;
#endif
return 1;
diff --git a/libmpcodecs/vf_divtc.c b/libmpcodecs/vf_divtc.c
index 307a14890d..f70d4802ec 100644
--- a/libmpcodecs/vf_divtc.c
+++ b/libmpcodecs/vf_divtc.c
@@ -33,7 +33,7 @@ struct vf_priv_s
* diff_MMX and diff_C stolen from vf_decimate.c
*/
-#ifdef HAVE_MMX
+#if HAVE_MMX
static int diff_MMX(unsigned char *old, unsigned char *new, int os, int ns)
{
volatile short out[4];
@@ -683,7 +683,7 @@ static int open(vf_instance_t *vf, char* args)
goto nomem;
diff=
-#ifdef HAVE_MMX
+#if HAVE_MMX
gCpuCaps.hasMMX?diff_MMX:
#endif
diff_C;
diff --git a/libmpcodecs/vf_eq.c b/libmpcodecs/vf_eq.c
index a0dc04ae39..d1183fc379 100644
--- a/libmpcodecs/vf_eq.c
+++ b/libmpcodecs/vf_eq.c
@@ -26,7 +26,7 @@ static struct vf_priv_s {
0
};
-#ifdef HAVE_MMX
+#if HAVE_MMX
static void process_MMX(unsigned char *dest, int dstride, unsigned char *src, int sstride,
int w, int h, int brightness, int contrast)
{
@@ -215,7 +215,7 @@ static int open(vf_instance_t *vf, char* args)
if (args) sscanf(args, "%d:%d", &vf->priv->brightness, &vf->priv->contrast);
process = process_C;
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX) process = process_MMX;
#endif
diff --git a/libmpcodecs/vf_eq2.c b/libmpcodecs/vf_eq2.c
index b3a501719f..ee66acde77 100644
--- a/libmpcodecs/vf_eq2.c
+++ b/libmpcodecs/vf_eq2.c
@@ -106,7 +106,7 @@ void create_lut (eq2_param_t *par)
par->lut_clean = 1;
}
-#ifdef HAVE_MMX
+#if HAVE_MMX
static
void affine_1d_MMX (eq2_param_t *par, unsigned char *dst, unsigned char *src,
unsigned w, unsigned h, unsigned dstride, unsigned sstride)
@@ -275,7 +275,7 @@ void check_values (eq2_param_t *par)
if ((par->c == 1.0) && (par->b == 0.0) && (par->g == 1.0)) {
par->adjust = NULL;
}
-#ifdef HAVE_MMX
+#if HAVE_MMX
else if (par->g == 1.0 && gCpuCaps.hasMMX) {
par->adjust = &affine_1d_MMX;
}
diff --git a/libmpcodecs/vf_filmdint.c b/libmpcodecs/vf_filmdint.c
index 5c022e5920..45e0907cc5 100644
--- a/libmpcodecs/vf_filmdint.c
+++ b/libmpcodecs/vf_filmdint.c
@@ -431,7 +431,7 @@ block_metrics_3dnow(unsigned char *a, unsigned char *b, int as, int bs,
int lines, struct vf_priv_s *p, struct frame_stats *s)
{
struct metrics tm;
-#ifndef HAVE_3DNOW
+#if !HAVE_3DNOW
mp_msg(MSGT_VFILTER, MSGL_FATAL, "block_metrics_3dnow: internal error\n");
#else
static const unsigned long long ones = 0x0101010101010101ull;
@@ -460,7 +460,7 @@ block_metrics_mmx2(unsigned char *a, unsigned char *b, int as, int bs,
int lines, struct vf_priv_s *p, struct frame_stats *s)
{
struct metrics tm;
-#ifndef HAVE_MMX
+#if !HAVE_MMX
mp_msg(MSGT_VFILTER, MSGL_FATAL, "block_metrics_mmx2: internal error\n");
#else
static const unsigned long long ones = 0x0101010101010101ull;
@@ -589,7 +589,7 @@ static inline int
dint_copy_line_mmx2(unsigned char *dst, unsigned char *a, long bos,
long cos, int ds, int ss, int w, int t)
{
-#ifndef HAVE_MMX
+#if !HAVE_MMX
mp_msg(MSGT_VFILTER, MSGL_FATAL, "dint_copy_line_mmx2: internal error\n");
return 0;
#else
@@ -1421,10 +1421,10 @@ static int open(vf_instance_t *vf, char* args)
}
if (p->mmx2 > 2)
p->mmx2 = 0;
-#ifndef HAVE_MMX
+#if !HAVE_MMX
p->mmx2 = 0;
#endif
-#ifndef HAVE_3DNOW
+#if !HAVE_3DNOW
p->mmx2 &= 1;
#endif
p->thres.odd = p->thres.even;
diff --git a/libmpcodecs/vf_fspp.c b/libmpcodecs/vf_fspp.c
index 46c8468745..7c42819d20 100644
--- a/libmpcodecs/vf_fspp.c
+++ b/libmpcodecs/vf_fspp.c
@@ -101,7 +101,7 @@ struct vf_priv_s { //align 16 !
};
-#ifndef HAVE_MMX
+#if !HAVE_MMX
//This func reads from 1 slice, 1 and clears 0 & 1
static void store_slice_c(uint8_t *dst, int16_t *src, int dst_stride, int src_stride, int width, int height, int log2_scale)
@@ -557,10 +557,10 @@ static int put_image(struct vf_instance* vf, mp_image_t *mpi, double pts)
}
}
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX) __asm__ volatile ("emms\n\t");
#endif
-#ifdef HAVE_MMX2
+#if HAVE_MMX2
if(gCpuCaps.hasMMX2) __asm__ volatile ("sfence\n\t");
#endif
return vf_next_put_image(vf,dmpi, pts);
@@ -702,7 +702,7 @@ const vf_info_t vf_info_fspp = {
#define THRESHOLD(r,x,t) if(((unsigned)((x)+t))>t*2) r=(x);else r=0;
#define DESCALE(x,n) (((x) + (1 << ((n)-1))) >> n)
-#ifdef HAVE_MMX
+#if HAVE_MMX
DECLARE_ASM_CONST(8, uint64_t, MM_FIX_0_382683433)=FIX64(0.382683433, 14);
DECLARE_ASM_CONST(8, uint64_t, MM_FIX_0_541196100)=FIX64(0.541196100, 14);
@@ -738,7 +738,7 @@ static const int16_t FIX_1_082392200=FIX(1.082392200, 13);
#endif
-#ifndef HAVE_MMX
+#if !HAVE_MMX
static void column_fidct_c(int16_t* thr_adr, DCTELEM *data, DCTELEM *output, int cnt)
{
@@ -1598,7 +1598,7 @@ static void column_fidct_mmx(int16_t* thr_adr, DCTELEM *data, DCTELEM *output,
#endif // HAVE_MMX
-#ifndef HAVE_MMX
+#if !HAVE_MMX
static void row_idct_c(DCTELEM* workspace,
int16_t* output_adr, int output_stride, int cnt)
@@ -1867,7 +1867,7 @@ static void row_idct_mmx (DCTELEM* workspace,
#endif // HAVE_MMX
-#ifndef HAVE_MMX
+#if !HAVE_MMX
static void row_fdct_c(DCTELEM *data, const uint8_t *pixels, int line_size, int cnt)
{
diff --git a/libmpcodecs/vf_halfpack.c b/libmpcodecs/vf_halfpack.c
index f15a9a439b..15997941f4 100644
--- a/libmpcodecs/vf_halfpack.c
+++ b/libmpcodecs/vf_halfpack.c
@@ -17,7 +17,7 @@ struct vf_priv_s {
int field;
};
-#ifdef HAVE_MMX
+#if HAVE_MMX
static void halfpack_MMX(unsigned char *dst, unsigned char *src[3],
int dststride, int srcstride[3],
int w, int h)
@@ -204,7 +204,7 @@ static int open(vf_instance_t *vf, char* args)
if (args) sscanf(args, "%d", &vf->priv->field);
halfpack = halfpack_C;
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX) halfpack = halfpack_MMX;
#endif
return 1;
diff --git a/libmpcodecs/vf_hue.c b/libmpcodecs/vf_hue.c
index 04697ea537..b10626ddbc 100644
--- a/libmpcodecs/vf_hue.c
+++ b/libmpcodecs/vf_hue.c
@@ -160,7 +160,7 @@ static int open(vf_instance_t *vf, char* args)
vf->priv->hue *= M_PI / 180.0;
process = process_C;
-#ifdef HAVE_MMXX
+#if HAVE_MMXX
if(gCpuCaps.hasMMX) process = process_MMX;
#endif
diff --git a/libmpcodecs/vf_ilpack.c b/libmpcodecs/vf_ilpack.c
index 4b5612643d..f3ce051535 100644
--- a/libmpcodecs/vf_ilpack.c
+++ b/libmpcodecs/vf_ilpack.c
@@ -57,7 +57,7 @@ static void pack_li_1_C(unsigned char *dst, unsigned char *y,
}
}
-#ifdef HAVE_MMX
+#if HAVE_MMX
static void pack_nn_MMX(unsigned char *dst, unsigned char *y,
unsigned char *u, unsigned char *v, int w)
{
@@ -93,7 +93,7 @@ static void pack_li_0_MMX(unsigned char *dst, unsigned char *y,
{
__asm__ volatile (""
"push %%"REG_BP" \n\t"
-#ifdef ARCH_X86_64
+#if ARCH_X86_64
"mov %6, %%"REG_BP" \n\t"
#else
"movl 4(%%"REG_d"), %%"REG_BP" \n\t"
@@ -186,7 +186,7 @@ static void pack_li_0_MMX(unsigned char *dst, unsigned char *y,
"pop %%"REG_BP" \n\t"
:
: "S" (y), "D" (dst), "a" (u), "b" (v), "c" (w/16),
-#ifdef ARCH_X86_64
+#if ARCH_X86_64
"d" ((long)us), "r" ((long)vs)
#else
"d" (&us)
@@ -201,7 +201,7 @@ static void pack_li_1_MMX(unsigned char *dst, unsigned char *y,
{
__asm__ volatile (""
"push %%"REG_BP" \n\t"
-#ifdef ARCH_X86_64
+#if ARCH_X86_64
"mov %6, %%"REG_BP" \n\t"
#else
"movl 4(%%"REG_d"), %%"REG_BP" \n\t"
@@ -298,7 +298,7 @@ static void pack_li_1_MMX(unsigned char *dst, unsigned char *y,
"pop %%"REG_BP" \n\t"
:
: "S" (y), "D" (dst), "a" (u), "b" (v), "c" (w/16),
-#ifdef ARCH_X86_64
+#if ARCH_X86_64
"d" ((long)us), "r" ((long)vs)
#else
"d" (&us)
@@ -396,7 +396,7 @@ static int open(vf_instance_t *vf, char* args)
pack_nn = (pack_func_t *)pack_nn_C;
pack_li_0 = pack_li_0_C;
pack_li_1 = pack_li_1_C;
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX) {
pack_nn = (pack_func_t *)pack_nn_MMX;
pack_li_0 = pack_li_0_MMX;
diff --git a/libmpcodecs/vf_ivtc.c b/libmpcodecs/vf_ivtc.c
index 450ccb0a3c..222b9fec4e 100644
--- a/libmpcodecs/vf_ivtc.c
+++ b/libmpcodecs/vf_ivtc.c
@@ -40,7 +40,7 @@ enum {
F_SHOW
};
-#ifdef HAVE_MMX
+#if HAVE_MMX
static void block_diffs_MMX(struct metrics *m, unsigned char *old, unsigned char *new, int os, int ns)
{
int i;
@@ -516,7 +516,7 @@ static int open(vf_instance_t *vf, char* args)
p->first = 1;
if (args) sscanf(args, "%d", &p->drop);
block_diffs = block_diffs_C;
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX) block_diffs = block_diffs_MMX;
#endif
return 1;
diff --git a/libmpcodecs/vf_noise.c b/libmpcodecs/vf_noise.c
index 02fe9d9e16..aab612c2b8 100644
--- a/libmpcodecs/vf_noise.c
+++ b/libmpcodecs/vf_noise.c
@@ -145,7 +145,7 @@ static int8_t *initNoise(FilterParam *fp){
/***************************************************************************/
-#ifdef HAVE_MMX
+#if HAVE_MMX
static inline void lineNoise_MMX(uint8_t *dst, uint8_t *src, int8_t *noise, int len, int shift){
long mmx_len= len&(~7);
noise+=shift;
@@ -174,7 +174,7 @@ static inline void lineNoise_MMX(uint8_t *dst, uint8_t *src, int8_t *noise, int
#endif
//duplicate of previous except movntq
-#ifdef HAVE_MMX2
+#if HAVE_MMX2
static inline void lineNoise_MMX2(uint8_t *dst, uint8_t *src, int8_t *noise, int len, int shift){
long mmx_len= len&(~7);
noise+=shift;
@@ -216,7 +216,7 @@ static inline void lineNoise_C(uint8_t *dst, uint8_t *src, int8_t *noise, int le
/***************************************************************************/
-#ifdef HAVE_MMX
+#if HAVE_MMX
static inline void lineNoiseAvg_MMX(uint8_t *dst, uint8_t *src, int len, int8_t **shift){
long mmx_len= len&(~7);
@@ -356,10 +356,10 @@ static int put_image(struct vf_instance* vf, mp_image_t *mpi, double pts){
vf_clone_mpi_attributes(dmpi, mpi);
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX) __asm__ volatile ("emms\n\t");
#endif
-#ifdef HAVE_MMX2
+#if HAVE_MMX2
if(gCpuCaps.hasMMX2) __asm__ volatile ("sfence\n\t");
#endif
@@ -447,13 +447,13 @@ static int open(vf_instance_t *vf, char* args){
}
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX){
lineNoise= lineNoise_MMX;
lineNoiseAvg= lineNoiseAvg_MMX;
}
#endif
-#ifdef HAVE_MMX2
+#if HAVE_MMX2
if(gCpuCaps.hasMMX2) lineNoise= lineNoise_MMX2;
// if(gCpuCaps.hasMMX) lineNoiseAvg= lineNoiseAvg_MMX2;
#endif
diff --git a/libmpcodecs/vf_pp7.c b/libmpcodecs/vf_pp7.c
index 4221625abf..31d6d653b4 100644
--- a/libmpcodecs/vf_pp7.c
+++ b/libmpcodecs/vf_pp7.c
@@ -155,7 +155,7 @@ static void dctB_c(DCTELEM *dst, DCTELEM *src){
}
}
-#ifdef HAVE_MMX
+#if HAVE_MMX
static void dctB_mmx(DCTELEM *dst, DCTELEM *src){
__asm__ volatile (
"movq (%0), %%mm0 \n\t"
@@ -397,10 +397,10 @@ static int put_image(struct vf_instance* vf, mp_image_t *mpi, double pts){
memcpy_pic(dmpi->planes[2], mpi->planes[2], mpi->w>>mpi->chroma_x_shift, mpi->h>>mpi->chroma_y_shift, dmpi->stride[2], mpi->stride[2]);
}
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX) __asm__ volatile ("emms\n\t");
#endif
-#ifdef HAVE_MMX2
+#if HAVE_MMX2
if(gCpuCaps.hasMMX2) __asm__ volatile ("sfence\n\t");
#endif
@@ -464,7 +464,7 @@ static int open(vf_instance_t *vf, char* args){
case 2: requantize= mediumthresh_c; break;
}
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX){
dctB= dctB_mmx;
}
diff --git a/libmpcodecs/vf_scale.c b/libmpcodecs/vf_scale.c
index 02cd1ac919..fd1c6ee7f3 100644
--- a/libmpcodecs/vf_scale.c
+++ b/libmpcodecs/vf_scale.c
@@ -555,7 +555,7 @@ void sws_getFlagsAndFilterFromCmdLine(int *flags, SwsFilter **srcFilterParam, Sw
static int firstTime=1;
*flags=0;
-#ifdef ARCH_X86
+#if ARCH_X86
if(gCpuCaps.hasMMX)
__asm__ volatile("emms\n\t"::: "memory"); //FIXME this should not be required but it IS (even for non-MMX versions)
#endif
diff --git a/libmpcodecs/vf_spp.c b/libmpcodecs/vf_spp.c
index 11a7cae1ff..50969c13fb 100644
--- a/libmpcodecs/vf_spp.c
+++ b/libmpcodecs/vf_spp.c
@@ -146,7 +146,7 @@ static void softthresh_c(DCTELEM dst[64], DCTELEM src[64], int qp, uint8_t *perm
}
}
-#ifdef HAVE_MMX
+#if HAVE_MMX
static void hardthresh_mmx(DCTELEM dst[64], DCTELEM src[64], int qp, uint8_t *permutation){
int bias= 0; //FIXME
unsigned int threshold1;
@@ -327,7 +327,7 @@ static void store_slice_c(uint8_t *dst, int16_t *src, int dst_stride, int src_st
}
}
-#ifdef HAVE_MMX
+#if HAVE_MMX
static void store_slice_mmx(uint8_t *dst, int16_t *src, int dst_stride, int src_stride, int width, int height, int log2_scale){
int y;
@@ -499,10 +499,10 @@ static int put_image(struct vf_instance* vf, mp_image_t *mpi, double pts){
}
}
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX) __asm__ volatile ("emms\n\t");
#endif
-#ifdef HAVE_MMX2
+#if HAVE_MMX2
if(gCpuCaps.hasMMX2) __asm__ volatile ("sfence\n\t");
#endif
@@ -589,7 +589,7 @@ static int open(vf_instance_t *vf, char* args){
case 1: requantize= softthresh_c; break;
}
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX){
store_slice= store_slice_mmx;
switch(vf->priv->mode&3){
diff --git a/libmpcodecs/vf_tfields.c b/libmpcodecs/vf_tfields.c
index 347cd4bb9e..0ebf41ddb2 100644
--- a/libmpcodecs/vf_tfields.c
+++ b/libmpcodecs/vf_tfields.c
@@ -47,7 +47,7 @@ static void deint(unsigned char *dest, int ds, unsigned char *src, int ss, int w
}
}
-#ifdef HAVE_3DNOW
+#if HAVE_3DNOW
static void qpel_li_3DNOW(unsigned char *d, unsigned char *s, int w, int h, int ds, int ss, int up)
{
int i, j, ssd=ss;
@@ -83,7 +83,7 @@ static void qpel_li_3DNOW(unsigned char *d, unsigned char *s, int w, int h, int
}
#endif
-#ifdef HAVE_MMX2
+#if HAVE_MMX2
static void qpel_li_MMX2(unsigned char *d, unsigned char *s, int w, int h, int ds, int ss, int up)
{
int i, j, ssd=ss;
@@ -120,7 +120,7 @@ static void qpel_li_MMX2(unsigned char *d, unsigned char *s, int w, int h, int d
}
#endif
-#ifdef HAVE_MMX
+#if HAVE_MMX
static void qpel_li_MMX(unsigned char *d, unsigned char *s, int w, int h, int ds, int ss, int up)
{
int i, j, ssd=ss;
@@ -480,14 +480,14 @@ static int open(vf_instance_t *vf, char* args)
if (args) sscanf(args, "%d:%d", &vf->priv->mode, &vf->priv->parity);
qpel_li = qpel_li_C;
qpel_4tap = qpel_4tap_C;
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX) qpel_li = qpel_li_MMX;
if(gCpuCaps.hasMMX) qpel_4tap = qpel_4tap_MMX;
#endif
-#ifdef HAVE_MMX2
+#if HAVE_MMX2
if(gCpuCaps.hasMMX2) qpel_li = qpel_li_MMX2;
#endif
-#ifdef HAVE_3DNOW
+#if HAVE_3DNOW
if(gCpuCaps.has3DNow) qpel_li = qpel_li_3DNOW;
#endif
return 1;
diff --git a/libmpcodecs/vf_unsharp.c b/libmpcodecs/vf_unsharp.c
index 40111fafcc..9f2a7d4b98 100644
--- a/libmpcodecs/vf_unsharp.c
+++ b/libmpcodecs/vf_unsharp.c
@@ -192,11 +192,11 @@ static int put_image( struct vf_instance* vf, mp_image_t *mpi, double pts) {
vf_clone_mpi_attributes(dmpi, mpi);
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX)
__asm__ volatile ("emms\n\t");
#endif
-#ifdef HAVE_MMX2
+#if HAVE_MMX2
if(gCpuCaps.hasMMX2)
__asm__ volatile ("sfence\n\t");
#endif
diff --git a/libmpcodecs/vf_uspp.c b/libmpcodecs/vf_uspp.c
index 04a42a2b9e..a0fca1503b 100644
--- a/libmpcodecs/vf_uspp.c
+++ b/libmpcodecs/vf_uspp.c
@@ -291,10 +291,10 @@ static int put_image(struct vf_instance* vf, mp_image_t *mpi, double pts){
}
}
-#ifdef HAVE_MMX
+#if HAVE_MMX
if(gCpuCaps.hasMMX) __asm__ volatile ("emms\n\t");
#endif
-#ifdef HAVE_MMX2
+#if HAVE_MMX2
if(gCpuCaps.hasMMX2) __asm__ volatile ("sfence\n\t");
#endif
@@ -370,7 +370,7 @@ static int open(vf_instance_t *vf, char* args){
if(vf->priv->qp < 0)
vf->priv->qp = 0;
-// #ifdef HAVE_MMX
+// #if HAVE_MMX
// if(gCpuCaps.hasMMX){
// store_slice= store_slice_mmx;
// }
diff --git a/libmpcodecs/vf_yadif.c b/libmpcodecs/vf_yadif.c
index 2c80a2ec5b..6f324dc4fa 100644
--- a/libmpcodecs/vf_yadif.c
+++ b/libmpcodecs/vf_yadif.c
@@ -69,7 +69,7 @@ static void store_ref(struct vf_priv_s *p, uint8_t *src[3], int src_stride[3], i
}
}
-#if defined(HAVE_MMX) && defined(NAMED_ASM_ARGS)
+#if HAVE_MMX && defined(NAMED_ASM_ARGS)
#define LOAD4(mem,dst) \
"movd "mem", "#dst" \n\t"\
@@ -282,7 +282,7 @@ static void filter_line_mmx2(struct vf_priv_s *p, uint8_t *dst, uint8_t *prev, u
#undef CHECK2
#undef FILTER
-#endif /* defined(HAVE_MMX) && defined(NAMED_ASM_ARGS) */
+#endif /* HAVE_MMX && defined(NAMED_ASM_ARGS) */
static void filter_line_c(struct vf_priv_s *p, uint8_t *dst, uint8_t *prev, uint8_t *cur, uint8_t *next, int w, int refs, int parity){
int x;
@@ -364,7 +364,7 @@ static void filter(struct vf_priv_s *p, uint8_t *dst[3], int dst_stride[3], int
}
}
}
-#if defined(HAVE_MMX) && defined(NAMED_ASM_ARGS)
+#if HAVE_MMX && defined(NAMED_ASM_ARGS)
if(gCpuCaps.hasMMX2) __asm__ volatile("emms \n\t" : : : "memory");
#endif
}
@@ -503,7 +503,7 @@ static int open(vf_instance_t *vf, char* args){
if (args) sscanf(args, "%d:%d", &vf->priv->mode, &vf->priv->parity);
filter_line = filter_line_c;
-#if defined(HAVE_MMX) && defined(NAMED_ASM_ARGS)
+#if HAVE_MMX && defined(NAMED_ASM_ARGS)
if(gCpuCaps.hasMMX2) filter_line = filter_line_mmx2;
#endif