https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91528
--- Comment #7 from Uroš Bizjak <ubizjak at gmail dot com> --- (In reply to H.J. Lu from comment #6) > (In reply to Uroš Bizjak from comment #3) > > (In reply to Richard Biener from comment #1) > > > > HJ, can you please take the patch from here? Realignment stuff is a bit of > > mistery to me. > > I prefer this patch: > > https://gcc.gnu.org/ml/gcc-patches/2016-01/msg02127.html I don't think the patch is correct. For SImode STV, we need 128bit stack alignment, since RA can decompose (SUBREG:V4SI (REG:SI)) to SImode spill and V4SImode fill from the stack, so the assumption in your patch: /* Don't do dynamic stack realignment for long long objects with -mpreferred-stack-boundary=2. The STV pass uses SSE2 instructions on DImode which needs 64-bit alignment for DImode. */ IMO does not reflect (new) reality.