Mach-O alignment fix
commit74a8755fe3ea755183c2a70a9fcf1a478dda2d68
authorDavid DeHaven <dave@sagetv.com>
Tue, 9 Dec 2008 08:18:43 +0000 (9 00:18 -0800)
committerH. Peter Anvin <hpa@zytor.com>
Thu, 18 Dec 2008 22:58:24 +0000 (18 14:58 -0800)
tree434653e7a948375fa1cd714f882867a89da8ea05
parent352fe06e02034394107e2ad625018eff731a9b01
Mach-O alignment fix

Several projects have taken to using .text to store read-only data
when building on Mac OS X due to crashes in SSE code from the .rodata
section being mis-aligned. It seems there was a misunderstanding about
how ld/ld64 handles section alignment in outmacho.c so I wrote a patch
to fix it. I tested it against x264 git, modified it to use ".rodata
align=16" for the data section and use movdqa instructions (guaranteed
to crash when built with unpatched nasm) and it passed all tests in
its checkasm tool.

If you want more data I can provide, but it's late and I've had a
couple glasses of mulled wine :)

-DrD-
output/outmacho.c