[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:36:02 CEST 2006
Guillaume Poirier wrote:
> 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)
Woops... Wrong!
It's more likely to be this change:
Index: sr1.c
===================================================================
--- sr1.c (revision 18792)
+++ sr1.c (working copy)
@@ -423,7 +423,7 @@
if (gCpuCaps.has3DNowExt)
{
dct36_func=dct36_3dnowex;
- dct64_MMX_func= (gCpuCaps.hasMMX2) ? dct64_MMX_3dnowex :
dct64_MMX_3dnow;
+ dct64_MMX_func= dct64_MMX_3dnowex;
mp_msg(MSGT_DECAUDIO,MSGL_V,"mp3lib: using 3DNow!Ex optimized
decore!\n");
}
else
More information about the MPlayer-dev-eng
mailing list