On Mon, Nov 26, 2018 at 03:08:32PM -0600, Aaron Sawdey wrote: > When I previously added the use of unaligned vsx stores to inline expansion > of memset, I didn't do a good job of managing boundary conditions. The > intention > was to only use unaligned vsx if the block being cleared was more than 32 > bytes. > What it actually did was to prevent the use of unaligned vsx for the last 32 > bytes of any block being cleared. So this change puts the test up front so it > is not affected by the decrement of bytes.
Oh wow. Yes, that isn't so great. Okay for trunk (and whatever backports). Thanks, Segher > 2018-11-26 Aaron Sawdey <acsaw...@linux.ibm.com> > > * config/rs6000/rs6000-string.c (expand_block_clear): Change how > we determine if unaligned vsx is ok.