[Mplayer-cvslog] CVS: main/libac3 Makefile,1.11,1.12 imdct.c,1.7,1.8 srfft.c,1.2,1.3

Atmosfear atmos4 at mplayer.dev.hu
Tue Jul 10 10:27:51 CEST 2001


Update of /cvsroot/mplayer/main/libac3
In directory mplayer:/var/tmp.root/cvs-serv2164

Modified Files:
	Makefile imdct.c srfft.c 
Log Message:
More optimized SSE code for libac3, give 10-15% speedup on PIII Cu-Mine.


Index: Makefile
===================================================================
RCS file: /cvsroot/mplayer/main/libac3/Makefile,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- Makefile	3 Jul 2001 07:50:53 -0000	1.11
+++ Makefile	10 Jul 2001 08:27:49 -0000	1.12
@@ -10,8 +10,8 @@
 
 ifeq ($(TARGET_ARCH_X86), yes)
 ifeq ($(TARGET_SSE),yes)
-SRCS += downmix/downmix_kni.S
-OBJS += downmix/downmix_kni.o
+SRCS += downmix/downmix_kni.S mmx/imdct512_kni.S mmx/srfft_kni.S
+OBJS += downmix/downmix_kni.o mmx/imdct512_kni.o mmx/srfft_kni.o
 else
 ifeq ($(TARGET_3DNOW),yes)
 SRCS += downmix/downmix_3dnow.S

Index: imdct.c
===================================================================
RCS file: /cvsroot/mplayer/main/libac3/imdct.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- imdct.c	22 Jun 2001 08:57:52 -0000	1.7
+++ imdct.c	10 Jul 2001 08:27:49 -0000	1.8
@@ -121,7 +121,7 @@
 /**
  *
  **/
-
+#ifndef HAVE_SSE
 void imdct_init(void)
  {
 	int i;
@@ -139,7 +139,10 @@
 		xsin2[i] = sin(2.0f * M_PI * (8*i+1)/(4*N)) * scale;
 	}
 }
-
+#endif
+#ifdef HAVE_SSE
+#include "mmx/imdct_kni.c"
+#else
 #ifdef HAVE_3DNOW
 #include "mmx/imdct_3dnow.c"
 #else
@@ -485,6 +488,7 @@
 	}
 }
 #endif /* HAVE_3DNOW */
+#endif /* HAVE_SSE */
 //FIXME remove - for timing code
 ///#include <sys/time.h>
 //FIXME remove

Index: srfft.c
===================================================================
RCS file: /cvsroot/mplayer/main/libac3/srfft.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- srfft.c	23 May 2001 08:20:16 -0000	1.2
+++ srfft.c	10 Jul 2001 08:27:49 -0000	1.3
@@ -37,6 +37,9 @@
 #include "config.h"
 #endif
 
+#ifdef HAVE_SSE
+#include "mmx/srfft_kni_c.c"
+#else
 #ifdef HAVE_3DNOW
 #include "mmx/srfft_3dnow.c"
 #else
@@ -416,7 +419,7 @@
   TRANS(x[3],x[7],x[11],x[15],wTB[3],wTB[7],delta16[3],delta16_3[3]);
 
 } 
-#endif
+#endif /* HAVE_3DNOW */
 void fft_64p(complex_t *a)
 {
   fft_8(&a[0]); fft_4(&a[8]); fft_4(&a[12]);
@@ -470,3 +473,4 @@
   /* fft_128(&a[0]); */
   fft_asmb(16, &a[0], &a[64], &delta128[0], &delta128_3[0]);
 }
+#endif /* HAVE_SSE */




More information about the MPlayer-cvslog mailing list