From 255bca1ecd8833222cf52efd47f9258910da57d4 Mon Sep 17 00:00:00 2001 From: reimar Date: Fri, 27 Mar 2009 20:34:55 +0000 Subject: Use x86_reg instead of long in several video filters to fix compilation on MinGW64. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29077 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpcodecs/vf_filmdint.c | 8 ++++---- libmpcodecs/vf_ilpack.c | 4 ++-- libmpcodecs/vf_noise.c | 6 +++--- libmpcodecs/vf_yadif.c | 4 ++-- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/libmpcodecs/vf_filmdint.c b/libmpcodecs/vf_filmdint.c index 477530e5f1..a0bd07ded0 100644 --- a/libmpcodecs/vf_filmdint.c +++ b/libmpcodecs/vf_filmdint.c @@ -424,7 +424,7 @@ block_metrics_faster_c(unsigned char *a, unsigned char *b, int as, int bs, "paddusw %%mm2, %%mm7\n\t" \ "paddusw %%mm1, %%mm7\n\t" \ : "=r" (a), "=r" (b) \ - : "r"((long)as), "r"((long)bs), "m" (ones), "0"(a), "1"(b), "X"(*a), "X"(*b) \ + : "r"((x86_reg)as), "r"((x86_reg)bs), "m" (ones), "0"(a), "1"(b), "X"(*a), "X"(*b) \ ); \ } while (--lines); @@ -466,8 +466,8 @@ block_metrics_mmx2(unsigned char *a, unsigned char *b, int as, int bs, mp_msg(MSGT_VFILTER, MSGL_FATAL, "block_metrics_mmx2: internal error\n"); #else static const unsigned long long ones = 0x0101010101010101ull; - unsigned long interlaced; - unsigned long prefetch_line = (((long)a>>3) & 7) + 10; + x86_reg interlaced; + x86_reg prefetch_line = (((long)a>>3) & 7) + 10; #ifdef DEBUG struct frame_stats ts = *s; #endif @@ -633,7 +633,7 @@ dint_copy_line_mmx2(unsigned char *dst, unsigned char *a, long bos, "por %%mm3, %%mm1 \n\t" /* avg if >= threshold */ "movq %%mm1, (%2,%4) \n\t" : /* no output */ - : "r" (a), "r" (bos), "r" (dst), "r" ((long)ss), "r" ((long)ds), "r" (cos) + : "r" (a), "r" ((x86_reg)bos), "r" ((x86_reg)dst), "r" ((x86_reg)ss), "r" ((x86_reg)ds), "r" ((x86_reg)cos) ); a += 8; dst += 8; diff --git a/libmpcodecs/vf_ilpack.c b/libmpcodecs/vf_ilpack.c index b9e6bbcb2f..22028df713 100644 --- a/libmpcodecs/vf_ilpack.c +++ b/libmpcodecs/vf_ilpack.c @@ -187,7 +187,7 @@ static void pack_li_0_MMX(unsigned char *dst, unsigned char *y, : : "S" (y), "D" (dst), "a" (u), "b" (v), "c" (w/16), #if ARCH_X86_64 - "d" ((long)us), "r" ((long)vs) + "d" ((x86_reg)us), "r" ((x86_reg)vs) #else "d" (&us) #endif @@ -299,7 +299,7 @@ static void pack_li_1_MMX(unsigned char *dst, unsigned char *y, : : "S" (y), "D" (dst), "a" (u), "b" (v), "c" (w/16), #if ARCH_X86_64 - "d" ((long)us), "r" ((long)vs) + "d" ((x86_reg)us), "r" ((x86_reg)vs) #else "d" (&us) #endif diff --git a/libmpcodecs/vf_noise.c b/libmpcodecs/vf_noise.c index eabfd5c16a..ae2b342227 100644 --- a/libmpcodecs/vf_noise.c +++ b/libmpcodecs/vf_noise.c @@ -147,7 +147,7 @@ static int8_t *initNoise(FilterParam *fp){ #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); + x86_reg mmx_len= len&(~7); noise+=shift; __asm__ volatile( @@ -176,7 +176,7 @@ static inline void lineNoise_MMX(uint8_t *dst, uint8_t *src, int8_t *noise, int //duplicate of previous except movntq #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); + x86_reg mmx_len= len&(~7); noise+=shift; __asm__ volatile( @@ -218,7 +218,7 @@ static inline void lineNoise_C(uint8_t *dst, uint8_t *src, int8_t *noise, int le #if HAVE_MMX static inline void lineNoiseAvg_MMX(uint8_t *dst, uint8_t *src, int len, int8_t **shift){ - long mmx_len= len&(~7); + x86_reg mmx_len= len&(~7); __asm__ volatile( "mov %5, %%"REG_a" \n\t" diff --git a/libmpcodecs/vf_yadif.c b/libmpcodecs/vf_yadif.c index d834784147..0eecb7fb82 100644 --- a/libmpcodecs/vf_yadif.c +++ b/libmpcodecs/vf_yadif.c @@ -247,8 +247,8 @@ static void filter_line_mmx2(struct vf_priv_s *p, uint8_t *dst, uint8_t *prev, u :[prev] "r"(prev),\ [cur] "r"(cur),\ [next] "r"(next),\ - [prefs]"r"((long)refs),\ - [mrefs]"r"((long)-refs),\ + [prefs]"r"((x86_reg)refs),\ + [mrefs]"r"((x86_reg)-refs),\ [pw1] "m"(pw_1),\ [pb1] "m"(pb_1),\ [mode] "g"(mode)\ -- cgit v1.2.3