[MPlayer-dev-eng] [PATCH] Make mp3lib SIMD optimizations work on AMD64, Part 1

Guillaume POIRIER poirierg at gmail.com
Sat May 19 19:23:21 CEST 2007


Hi

On 5/19/07, Zuxy Meng <zuxy.meng at gmail.com> wrote:
> As discussed with Guillaume on IRC, I'll split my previous big patch
> (Rewrite synth_1to1_MMX....) into several small parts for easier
> review. Here's the first one, rewriting the generic code in
> synth_1to1_MMX from assembly to C, so we don't need to deal with
> different ABIs. I've tested it and confirmed it doesn't hurt
> performance.
>
> Note I removed a conditional jump in the remaining assembly too. By
> analyzing the code I'm sure it's never taken so don't worry about
> that. Strictly speaking it should be in a seperate patch but then this
> patch would break mplayer...

Patch Ok with me. I also tested it on AMD64: now mp3lib/decode_MMX.o
can compile.

You can apply your patch whenever you feel like it.


> Part 2 will replace 32-bit leal to equivalent add/sub (without the 'l'
> suffix) so pointer arithmetic will be 64-bit under amd64.
>
> Part 3 will remove hardcoded registers.
>
> Part 4 will kill tabinit_mmx.c. We don't need to compute the table at
> runtime; it can be predetermined.
>
> Part 5 will correct data types, replacing 'long' with 'int' where necessary.
>
> The last patch will deal with Makefile and macros.

I'm happy with this schedule, I look forward reviewing these patches.

Guillaume
-- 
Rich, you're forgetting one thing here: *everybody* except you is
stupid.
    Måns Rullgård


More information about the MPlayer-dev-eng mailing list