http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50494
--- Comment #17 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2013-02-14 09:18:46 UTC --- > Because as it is seen as a regular VAR_DECL by optimizers the > vectorizer (well, IPA increase-alignment in this case) chooses to > bump its alignment to be able to use aligned vector moves. > > Thus we need to honor the increased DECL_ALIGN when outputting the > constant pool, otherwise we generate wrong-code. I see, thanks. Perhaps the safest solution is to prevent IPA from increasing the alignment if DECL_IN_CONSTANT_POOL, as initializations of aggregate objects are presumably not supposed to happen in hot spots.