[MPlayer-dev-eng] [PATCH] Saturation & PSWAPD bugfix in mp3lib/dct64_3dnow.c & mp3lib/dct64_k7.c

Guillaume Poirier gpoirier at mplayerhq.hu
Tue Jun 27 10:33:02 CEST 2006


Diego Biurrun wrote:
> On Tue, Jun 27, 2006 at 08:01:59AM +0200, Guillaume POIRIER wrote:
> 
>>On 6/21/06, Zuxy Meng <zuxy.meng at gmail.com> wrote:
>>
>>>2006/6/21, Diego Biurrun <diego at biurrun.de>:
>>>
>>>>On Wed, Jun 21, 2006 at 08:50:37PM +0800, Zuxy Meng wrote:
>>>>
>>>>>In addition, a false dependency of MMX2 in dct64_k7.c is also fixed
>>>>>(replace pshufw $78 with pswapd) so it can be used on a K6-2/3+.
>>>>
>>>>Could you please split this into two different patches?
>>>>
>>>
>>>Sans problèms.
>>
>>Both patches applied. I don't have access to any K6, so I couldn't
>>test if the 2nd patch really works as expected. If it doesn't, please
>>speak-up.
>>In theory, it shouldn't even matter for k6 right now, as these
>>routines aren't used on k6 (but it would be rather trivial to do so).
> 
> 
> How would I test this on my K6-III+?  It seems that dct64_k7.c was
> compiled all along...

Yes, it's compiled, but the ASM routines in dct64_k7.c aren't used in K6.
You'd need to adapt the part the code in mp3lib/sr1.c::MP3_Init() to
select the 3dnow code.

I _guess_ it would be smth like that:

Index: sr1.c
===================================================================
--- sr1.c       (revision 18792)
+++ sr1.c       (working copy)
@@ -430,7 +430,7 @@
     if (gCpuCaps.has3DNow)
     {
        dct36_func = dct36_3dnow;
-       dct64_MMX_func = dct64_MMX_3dnow;
+       dct64_MMX_func = dct64_MMX_3dnowex;
        mp_msg(MSGT_DECAUDIO,MSGL_V,"mp3lib: using 3DNow! optimized
decore!\n");
     }
     else

if it's not the case, then you'll see it quickly (it'll just crash)

Guillaume



More information about the MPlayer-dev-eng mailing list