[MPlayer-dev-eng] [PATCH] mp3lib: Align output so that movaps can be used instead of movups

Reimar Döffinger Reimar.Doeffinger at stud.uni-karlsruhe.de
Mon Jun 4 19:46:04 CEST 2007


Hello,
On Mon, Jun 04, 2007 at 10:24:48PM +0800, Zuxy Meng wrote:
> OK. Static is dropped because:
> 1. mingw32 binutils have some problems in aligning static variables
> defined in a brace-enclosed block.

That is not a good reason because
1) It's a bug in binutils (though why binutils? After the compiler the
output should not really look much different if it's in a block or at
global visibility??). Also by just removing it you are making them stack
variables, and gcc definitely doesn't guarantee alignment for these
either. So this is only a reason to make them global (though like that
the thread safety issues remain).

> 2. storing those temporary variables as non-static is actually faster.
> (possibly due to better data locality?)

Is it also faster after the alignment part of the patch? How about
aligning by 64 bytes instead of 16?

Greetings,
Reimar Döffinger



More information about the MPlayer-dev-eng mailing list