http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57748
--- Comment #37 from Martin Jambor <jamborm at gcc dot gnu.org> --- Created attachment 30854 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30854&action=edit Testcase for both the assignment and read issues For the record, this is a slightly extended original x86_64 testcase which also exposes the bug in the read expansion. So far I have not been able to come up with a grave problem with passing EXPAND_MEMORY to tem expansion (and looking at history of this code, the passed modifier has changed quite a lot and for not immediately apparent reasons). In order to use movmisalign_optab instructions when we can, we should probably only do it if tem is a structure with a zero sized array.