https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68273
--- Comment #37 from Matthew Fortune <matthew.fortune at imgtec dot com> --- (In reply to rguent...@suse.de from comment #36) > On Fri, 3 Jun 2016, matthew.fortune at imgtec dot com wrote: > > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68273 > > > > --- Comment #35 from Matthew Fortune <matthew.fortune at imgtec dot com> --- > > (In reply to Aurelien Jarno from comment #33) > > > (In reply to Hector Oron from comment #32) > > > > (In reply to Richard Biener from comment #31) > > > > > eipa_sra introduces the remaining SSA name with non-default alignment > > > > > via > > > > > > > > [PATCH] > > > > > > > > > > For the record, Debian now have the patch from comment #32 in its version > > > of > > > GCC 5 and 6. This fixes a few more issues than reported here, in addition > > > to > > > graphviz, it also fixes subversion and jq. > > > > Richard: Is the updated patch from comment #32 in-keeping with your original > > changes in comment #20? If so then I'll post it on gcc-patches. > > > > I do accept that there are MIPS fixes to be made in this area but I'd like > > to > > get the existing code to 'work' again first if possible. > > Note that the tree-ssa.c changes from comment#32 do not work as-is > (on the branch you don't notice that because checking is disabled). > Even the relaxed variant that we don't have over-aligned types in the IL > breaks AFAIR. > > Given the analysis in comment #31 I'd rather patch up either > turn_representatives_into_adjustments or ipa_modify_formal_parameters > (which already seems to have code to avoid under-aligned types). > > That is, does > > Index: gcc/ipa-prop.c > =================================================================== > --- gcc/ipa-prop.c (revision 237053) > +++ gcc/ipa-prop.c (working copy) > @@ -3910,7 +3909,7 @@ ipa_modify_formal_parameters (tree fndec > if (is_gimple_reg_type (ptype)) > { > unsigned malign = GET_MODE_ALIGNMENT (TYPE_MODE > (ptype)); > - if (TYPE_ALIGN (ptype) < malign) > + if (TYPE_ALIGN (ptype) != malign) > ptype = build_aligned_type (ptype, malign); > } > } > > fix the issue as well? Sorry for the very slow reply, got busy with libjava bugs. This does fix jq as well so it looks good. I haven't done a GCC testsuite run with the change in place yet though.