summaryrefslogtreecommitdiff
path: root/src/post/deinterlace/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/post/deinterlace/plugins')
-rw-r--r--src/post/deinterlace/plugins/greedy.c2
-rw-r--r--src/post/deinterlace/plugins/greedy2frame_template.c8
-rw-r--r--src/post/deinterlace/plugins/greedyh.asm2
-rw-r--r--src/post/deinterlace/plugins/linearblend.c10
-rw-r--r--src/post/deinterlace/plugins/tomsmocomp/TomsMoCompAll.inc2
-rw-r--r--src/post/deinterlace/plugins/vfir.c4
6 files changed, 16 insertions, 12 deletions
diff --git a/src/post/deinterlace/plugins/greedy.c b/src/post/deinterlace/plugins/greedy.c
index 9f0e313b9..fa157258f 100644
--- a/src/post/deinterlace/plugins/greedy.c
+++ b/src/post/deinterlace/plugins/greedy.c
@@ -64,7 +64,7 @@ static void deinterlace_greedy_packed422_scanline_mmxext( uint8_t *output,
deinterlace_scanline_data_t *data,
int width )
{
-#ifdef ARCH_X86
+#if defined(ARCH_X86) || defined(ARCH_X86_64)
mmx_t MaxComb;
uint8_t *m0 = data->m0;
uint8_t *t1 = data->t1;
diff --git a/src/post/deinterlace/plugins/greedy2frame_template.c b/src/post/deinterlace/plugins/greedy2frame_template.c
index 7b68d6e46..42c575f58 100644
--- a/src/post/deinterlace/plugins/greedy2frame_template.c
+++ b/src/post/deinterlace/plugins/greedy2frame_template.c
@@ -1,5 +1,5 @@
/*****************************************************************************
-** $Id: greedy2frame_template.c,v 1.8 2005/06/05 16:00:06 miguelfreitas Exp $
+** $Id: greedy2frame_template.c,v 1.9 2006/02/04 14:06:29 miguelfreitas Exp $
******************************************************************************
** Copyright (c) 2000 John Adcock, Tom Barry, Steve Grimm All rights reserved.
** port copyright (c) 2003 Miguel Freitas
@@ -19,6 +19,10 @@
** CVS Log
**
** $Log: greedy2frame_template.c,v $
+** Revision 1.9 2006/02/04 14:06:29 miguelfreitas
+** Enable AMD64 mmx/sse support in some plugins (tvtime, libmpeg2, goom...)
+** patch by dani3l
+**
** Revision 1.8 2005/06/05 16:00:06 miguelfreitas
** quite some hacks for gcc 2.95 compatibility
**
@@ -112,7 +116,7 @@ static void DeinterlaceGreedy2Frame_MMX(uint8_t *output, int outstride,
int bottom_field, int second_field, int width, int height )
#endif
{
-#ifdef ARCH_X86
+#if defined(ARCH_X86) || defined(ARCH_X86_64)
int Line;
int stride = width * 2;
register uint8_t* M1;
diff --git a/src/post/deinterlace/plugins/greedyh.asm b/src/post/deinterlace/plugins/greedyh.asm
index a885b1dd3..0bbd745aa 100644
--- a/src/post/deinterlace/plugins/greedyh.asm
+++ b/src/post/deinterlace/plugins/greedyh.asm
@@ -323,7 +323,7 @@ static void FUNCT_NAME(uint8_t *output, int outstride,
}
// clear out the MMX registers ready for doing floating point again
-#ifdef ARCH_X86
+#if defined(ARCH_X86) || defined(ARCH_X86_64)
__asm__ __volatile__ ("emms\n\t");
#endif
}
diff --git a/src/post/deinterlace/plugins/linearblend.c b/src/post/deinterlace/plugins/linearblend.c
index d8ecacefc..3b65e381c 100644
--- a/src/post/deinterlace/plugins/linearblend.c
+++ b/src/post/deinterlace/plugins/linearblend.c
@@ -45,7 +45,7 @@ static void deinterlace_scanline_linear_blend( uint8_t *output,
uint8_t *t0 = data->t0;
uint8_t *b0 = data->b0;
uint8_t *m1 = data->m1;
-#ifdef ARCH_X86
+#if defined(ARCH_X86) || defined(ARCH_X86_64)
int i;
// Get width in bytes.
@@ -110,7 +110,7 @@ static void deinterlace_scanline_linear_blend2( uint8_t *output,
uint8_t *t1 = data->t1;
uint8_t *b1 = data->b1;
-#ifdef ARCH_X86
+#if defined(ARCH_X86) || defined(ARCH_X86_64)
int i;
// Get width in bytes.
@@ -167,7 +167,7 @@ static void deinterlace_scanline_linear_blend2( uint8_t *output,
#endif
}
-#ifdef ARCH_X86
+#if defined(ARCH_X86) || defined(ARCH_X86_64)
/* MMXEXT version is about 15% faster with Athlon XP [MF] */
@@ -337,7 +337,7 @@ static deinterlace_method_t linearblendmethod =
"BlurTemporal",
*/
2,
-#ifdef ARCH_X86
+#if defined(ARCH_X86) || defined(ARCH_X86_64)
MM_ACCEL_X86_MMX,
#else
0,
@@ -362,7 +362,7 @@ static deinterlace_method_t linearblendmethod =
deinterlace_method_t *linearblend_get_method( void )
{
-#ifdef ARCH_X86
+#if defined(ARCH_X86) || defined(ARCH_X86_64)
if( xine_mm_accel() & MM_ACCEL_X86_MMXEXT )
return &linearblendmethod_mmxext;
else
diff --git a/src/post/deinterlace/plugins/tomsmocomp/TomsMoCompAll.inc b/src/post/deinterlace/plugins/tomsmocomp/TomsMoCompAll.inc
index 0fd3f451f..5870d77be 100644
--- a/src/post/deinterlace/plugins/tomsmocomp/TomsMoCompAll.inc
+++ b/src/post/deinterlace/plugins/tomsmocomp/TomsMoCompAll.inc
@@ -246,7 +246,7 @@ static void FUNCT_NAME(uint8_t *output, int outstride,
}
end:
-#ifdef ARCH_X86
+#if defined(ARCH_X86) || defined(ARCH_X86_64)
__asm__ __volatile__("emms");
#endif
return;
diff --git a/src/post/deinterlace/plugins/vfir.c b/src/post/deinterlace/plugins/vfir.c
index 6809b2244..3bf03a4a0 100644
--- a/src/post/deinterlace/plugins/vfir.c
+++ b/src/post/deinterlace/plugins/vfir.c
@@ -51,7 +51,7 @@ static void deinterlace_line( uint8_t *dst, uint8_t *lum_m4,
uint8_t *lum_m3, uint8_t *lum_m2,
uint8_t *lum_m1, uint8_t *lum, int size )
{
-#ifdef ARCH_X86
+#if defined(ARCH_X86) || defined(ARCH_X86_64)
mmx_t rounder;
rounder.uw[0]=4;
@@ -137,7 +137,7 @@ static deinterlace_method_t vfirmethod =
"BlurVertical",
*/
1,
-#ifdef ARCH_X86
+#if defined(ARCH_X86) || defined(ARCH_X86_64)
MM_ACCEL_X86_MMXEXT,
#else
0,