https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65028
--- Comment #34 from H.J. Lu <hjl.tools at gmail dot com> --- propagate_alignment_accross_jump_function seems wrong: if (cur.known) { if (!dest_lat->alignment.known) { dest_lat->alignment = cur; return true; } We can't change argument alignment from unknown to know. We can only reduce argument alignment. Callee can only assume the smallest argument alignment passed down from all callers.