Hi Bill, On Fri, Jan 13, 2017 at 10:28:33AM -0600, Bill Schmidt wrote: > There is a gap in swap optimization that does not properly handle code > generated by __builtin_vsx_xxspltd. This is expanded into an > UNSPEC_VSX_XXSPLTD, which is currently treated as ok to swap. It should > instead be treated as ok to swap, with special handling to modify the lane > used as the source of the splat. We have existing code to do this for > other splat forms, so the patch is quite simple. > > Bootstrapped and tested on powerpc64le-unknown-linux-gnu with no regressions. > Is this ok for trunk? We also require backports for 5 and 6.
This is okay, thanks. Backports are fine as well (after the usual delay). Segher > 2017-01-13 Bill Schmidt <wschm...@linux.vnet.ibm.com> > > * config/rs6000/rs6000.c (rtx_is_swappable_p): Change > UNSPEC_VSX__XXSPLTD to require special splat handling. > > [gcc/testsuite] > > 2017-01-13 Bill Schmidt <wschm...@linux.vnet.ibm.com> > > * gcc.target/powerpc/swaps-p8-27.c: New.