diff mp3lib/decod386.c @ 1245:03b7e2955a20

Added newest MMX-optimized decore which speedups decoding at least on 13% for any cpu.
author nick
date Fri, 29 Jun 2001 17:55:35 +0000
parents 9bc104531aec
children 50b8a3a5eeed
line wrap: on
line diff
--- a/mp3lib/decod386.c	Fri Jun 29 10:54:41 2001 +0000
+++ b/mp3lib/decod386.c	Fri Jun 29 17:55:35 2001 +0000
@@ -105,6 +105,15 @@
 }
 #endif
 
+synth_func_t synth_func;
+
+int synth_1to1_MMX( real *bandPtr,int channel,short * samples)
+{
+    static short buffs[2][2][0x110];
+    static int bo = 1;
+    synth_1to1_MMX_s(bandPtr, channel, samples, (short *) buffs, &bo); 
+    return 0;
+  } 
 
 static int synth_1to1(real *bandPtr,int channel,unsigned char *out,int *pnt)
 {
@@ -117,40 +126,13 @@
   int clip = 0;
   int bo1;
 
-  #ifdef HAVE_SSE_MP3
-  //if ( _3dnow )
+  if ( synth_func )
    {
     int ret;
-    ret=synth_1to1_sse( bandPtr,channel,out+*pnt );
-    *pnt+=128;
-    return ret;
-   }
-  #endif
-  #ifdef HAVE_3DNOWEX
-  if ( _3dnow > 1 )
-   {
-    int ret;
-    ret=synth_1to1_3dnowex( bandPtr,channel,out+*pnt );
+    ret=(*synth_func)( bandPtr,channel,samples);
     *pnt+=128;
     return ret;
    }
-  #endif
-  #ifdef HAVE_3DNOW
-  if ( _3dnow )
-   {
-    int ret;
-    ret=synth_1to1_3dnow( bandPtr,channel,out+*pnt );
-    *pnt+=128;
-    return ret;
-   }
-  #endif
-  if ( _i586 )
-   {
-     int ret;
-     ret=synth_1to1_pent( bandPtr,channel,out+*pnt );
-     *pnt+=128;
-     return ret;
-   }
 
   if(!channel) {     /* channel=0 */
     bo--;