https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63679

--- Comment #19 from jgreenhalgh at gcc dot gnu.org ---
(In reply to rguent...@suse.de from comment #16)
> Certainly removing the alignment is not going to fly - we'd generate
> very bad code for strict-align targets for initializing packed
> structs by pieces for example.

Surely this is already true?

The alignment here is what we can assume for the entire aggregate - the
previous check was can_move_by_pieces, which doesn't check the components of
the aggregate.

For a well-aligned aggreagate of the appropriate size, can_move_by_pieces will
return true, and we'll initialize the packed struct by its components
regardless of the component alignment.

Or am I missing something?

Reply via email to