Misaligned .bss section for PE?
Zuxy Meng
zuxy.meng@gmail.com
Thu May 22 09:43:00 GMT 2008
Hi there,
Recently I met a crash on MinGW32 caused by misaligned access of SSE
instructions. The root cause was that a static var wasn't aligned to a
16-byte boundary. However, in gcc source this var had already been marked
with "__attribute__((aligned(16)))".
I then checked the output of "gcc -S" and it turned out that with PE you
couldn't specify a symbol's alignment. Rather, the alignment was ensured by
explicit padding. But gcc seemed to do it right, at least within a
compilation unit. Unfortunately, after hundreds of objects got linked
together, some symbols' alignment was broken.
I'm just wondering if I should report it as a GCC bug or a binutils one. Any
help? Thanks!
--
Zuxy
More information about the Binutils
mailing list