On Fri, Oct 16, 2015 at 2:48 PM, Yann Ylavic <ylavic....@gmail.com> wrote: > On Fri, Oct 16, 2015 at 2:35 PM, Rainer Jung <rainer.j...@kippdata.de> wrote: >> >> I didn't yet have the time to reproduce and test your patch, but the >> APR_ALIGN((size),sizeof(void *)) align approach would not work. The problem >> here is that even or especially when building for 32 Bits and then using a >> 64 Bit data type, the alignment fails. So the pointer size would be 4 here, >> but the requirement alignment 8 bytes. > > Hm, correct, each integral type (greater than the word) needs be > aligned on its size!
Though the issue here is not accessing the type as an integral, so aligning on 4 bytes (for 32 bit hardware) should enough for accessing each scoreborad entry/struct (the members of the structs themselves will still be aligned according to their type, so they can also be safely accessed).