I noticed that with GNU C Library, the malloc() function only guarantees 4-byte alignment, which is why GridFlow-0.8 now uses two pointers in the Grid data structure: one for the pointer that malloc() actually returned, and another that has guaranteed 8-byte alignment (i may also try 16-byte alignment in the future). This means all Grids have to be slightly overallocated but usually that's not a significant amount compared to the size of the Grid.
thanks to thomas grill, it's the same with pd's dsp blocks ... anyway, this prevents the compiler from generating optimal code ... so that has to be done by hand ...
cheers ... tim