diff postproc/swscale_template.c @ 12017:21e5cb258a95

AltiVec support in postproc/ + altivec optimizations for yuv2yuvX patch by (Romain Dolbeau <dolbeau at irisa dot fr>)
author michael
date Thu, 11 Mar 2004 17:58:11 +0000
parents c552fe6acbaa
children 2ef24558b732
line wrap: on
line diff
--- a/postproc/swscale_template.c	Tue Mar 09 14:46:34 2004 +0000
+++ b/postproc/swscale_template.c	Thu Mar 11 17:58:11 2004 +0000
@@ -59,6 +59,10 @@
 #define MOVNTQ(a,b) "movq " #a ", " #b " \n\t"
 #endif
 
+#ifdef HAVE_ALTIVEC
+#include "swscale_altivec_template.c"
+#endif
+
 #define YSCALEYUV2YV12X(x, offset) \
 			"xorl %%eax, %%eax		\n\t"\
 			"movq "VROUNDER_OFFSET"(%0), %%mm3\n\t"\
@@ -766,9 +770,15 @@
 			: "%eax", "%edx", "%esi"
 		);
 #else
+#ifdef HAVE_ALTIVEC
+yuv2yuvX_altivec_real(lumFilter, lumSrc, lumFilterSize,
+		      chrFilter, chrSrc, chrFilterSize,
+		      dest, uDest, vDest, dstW, chrDstW);
+#else //HAVE_ALTIVEC
 yuv2yuvXinC(lumFilter, lumSrc, lumFilterSize,
 	    chrFilter, chrSrc, chrFilterSize,
 	    dest, uDest, vDest, dstW, chrDstW);
+#endif //!HAVE_ALTIVEC
 #endif
 }