[MPlayer-cvslog] r29681 - in trunk/libmpcodecs: vf_ilpack.c vf_ivtc.c vf_tfields.c

reimar subversion at mplayerhq.hu
Mon Sep 14 16:47:56 CEST 2009


Author: reimar
Date: Mon Sep 14 16:47:56 2009
New Revision: 29681

Log:
Add several HAVE_EBX_AVAILABLE conditions where necessary

Modified:
   trunk/libmpcodecs/vf_ilpack.c
   trunk/libmpcodecs/vf_ivtc.c
   trunk/libmpcodecs/vf_tfields.c

Modified: trunk/libmpcodecs/vf_ilpack.c
==============================================================================
--- trunk/libmpcodecs/vf_ilpack.c	Mon Sep 14 15:16:35 2009	(r29680)
+++ trunk/libmpcodecs/vf_ilpack.c	Mon Sep 14 16:47:56 2009	(r29681)
@@ -88,6 +88,7 @@ static void pack_nn_MMX(unsigned char *d
 	pack_nn_C(dst, y, u, v, (w&7));
 }
 
+#if HAVE_EBX_AVAILABLE
 static void pack_li_0_MMX(unsigned char *dst, unsigned char *y,
 	unsigned char *u, unsigned char *v, int w, int us, int vs)
 {
@@ -307,6 +308,7 @@ static void pack_li_1_MMX(unsigned char 
 		);
 	pack_li_1_C(dst, y, u, v, (w&15), us, vs);
 }
+#endif /* HAVE_EBX_AVAILABLE */
 #endif
 
 static pack_func_t *pack_nn;
@@ -399,8 +401,10 @@ static int open(vf_instance_t *vf, char*
 #if HAVE_MMX
 	if(gCpuCaps.hasMMX) {
 		pack_nn = (pack_func_t *)pack_nn_MMX;
+#if HAVE_EBX_AVAILABLE
 		pack_li_0 = pack_li_0_MMX;
 		pack_li_1 = pack_li_1_MMX;
+#endif
 	}
 #endif
 

Modified: trunk/libmpcodecs/vf_ivtc.c
==============================================================================
--- trunk/libmpcodecs/vf_ivtc.c	Mon Sep 14 15:16:35 2009	(r29680)
+++ trunk/libmpcodecs/vf_ivtc.c	Mon Sep 14 16:47:56 2009	(r29681)
@@ -40,7 +40,7 @@ enum {
 	F_SHOW
 };
 
-#if HAVE_MMX
+#if HAVE_MMX && HAVE_EBX_AVAILABLE
 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*
 	p->first = 1;
 	if (args) sscanf(args, "%d", &p->drop);
 	block_diffs = block_diffs_C;
-#if HAVE_MMX
+#if HAVE_MMX && HAVE_EBX_AVAILABLE
 	if(gCpuCaps.hasMMX) block_diffs = block_diffs_MMX;
 #endif
 	return 1;

Modified: trunk/libmpcodecs/vf_tfields.c
==============================================================================
--- trunk/libmpcodecs/vf_tfields.c	Mon Sep 14 15:16:35 2009	(r29680)
+++ trunk/libmpcodecs/vf_tfields.c	Mon Sep 14 16:47:56 2009	(r29681)
@@ -168,6 +168,7 @@ static void qpel_li_MMX(unsigned char *d
 	__asm__ volatile("emms \n\t" : : : "memory");
 }
 
+#if HAVE_EBX_AVAILABLE
 static void qpel_4tap_MMX(unsigned char *d, unsigned char *s, int w, int h, int ds, int ss, int up)
 {
 	int i, j, ssd=ss;
@@ -247,6 +248,7 @@ static void qpel_4tap_MMX(unsigned char 
 	if (!up) fast_memcpy(d, s, w);
 	__asm__ volatile("emms \n\t" : : : "memory");
 }
+#endif /* HAVE_EBX_AVAILABLE */
 #endif
 
 static inline int clamp(int a)
@@ -480,8 +482,10 @@ static int open(vf_instance_t *vf, char*
 	qpel_4tap = qpel_4tap_C;
 #if HAVE_MMX
 	if(gCpuCaps.hasMMX) qpel_li = qpel_li_MMX;
+#if HAVE_EBX_AVAILABLE
 	if(gCpuCaps.hasMMX) qpel_4tap = qpel_4tap_MMX;
 #endif
+#endif
 #if HAVE_MMX2
 	if(gCpuCaps.hasMMX2) qpel_li = qpel_li_MMX2;
 #endif


More information about the MPlayer-cvslog mailing list