summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-03-27 20:34:55 +0000
committerreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-03-27 20:34:55 +0000
commit255bca1ecd8833222cf52efd47f9258910da57d4 (patch)
treec2933c7dbc8c7c9219464dfadcf6112fa5baab72
parent98c7abd005003196f8042f471286d8da99296459 (diff)
downloadmpv-255bca1ecd8833222cf52efd47f9258910da57d4.tar.bz2
mpv-255bca1ecd8833222cf52efd47f9258910da57d4.tar.xz
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
-rw-r--r--libmpcodecs/vf_filmdint.c8
-rw-r--r--libmpcodecs/vf_ilpack.c4
-rw-r--r--libmpcodecs/vf_noise.c6
-rw-r--r--libmpcodecs/vf_yadif.c4
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)\