Remove .rodata alignment kludge for Mach-O if a recent enough yasm is used.
authorNico Weber <thakis@chromium.org>
Tue, 17 Apr 2012 18:26:01 +0000 (11:26 -0700)
committerMichael Niedermayer <michaelni@gmx.at>
Thu, 19 Apr 2012 15:14:47 +0000 (17:14 +0200)
commita4a88fd42c934b729f689be790b55df061ded1f8
tree5c6d56dcf34a82dda409dd38b99f211084712b5d
parentb4043ef504b77c357d33ffa2be28ed1c4eeecf7f
Remove .rodata alignment kludge for Mach-O if a recent enough yasm is used.

Yasm was fixed in its r2161 and yasm 0.8.0 (Apr 2010) contained this fix.
Nasm was fixed in 2.06 (Jun 2009):
https://groups.google.com/group/alt.lang.asm/browse_thread/thread/fcc85bbc3745d893

I tested with yasm  0.7.99 and yasm 1.2.0.7, where this works fine.

I also tested with nasm. The nasm shipping with Xcode is too old to understand
ffmpeg's assembly, before and after the patch. Nasm 2.10 fails to compile
fft_mmx.asm on trunk with

  libavcodec/x86/fft_mmx.asm:88: panic: section ".text" has already been specified with alignment 32, conflicts with new alignment of 16

but builds fine if I change the two alignment "16"s in x86inc.asm to "32". With this patch,
nasm 2.10 fails with

  libavcodec/x86/fft_mmx.asm:39: panic: section ".rodata" has already been specified with alignment 32, conflicts with new alignment of 16

instead, but again builds fine with s/16/32/.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavutil/x86/x86inc.asm