https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81593
--- Comment #3 from Michael Meissner <meissner at gcc dot gnu.org> --- Author: meissner Date: Wed Aug 30 01:12:21 2017 New Revision: 251445 URL: https://gcc.gnu.org/viewcvs?rev=251445&root=gcc&view=rev Log: [gcc] 2017-08-29 Michael Meissner <meiss...@linux.vnet.ibm.com> Back port from trunk 2017-08-07 Michael Meissner <meiss...@linux.vnet.ibm.com> PR target/81593 * config/rs6000/vsx.md (vsx_concat_<mode>_1): New combiner insns to recognize inserting into a vector from a double word element that was extracted from another vector, and eliminate extra XXPERMDI instructions. (vsx_concat_<mode>_2): Likewise. (vsx_concat_<mode>_3): Likewise. (vsx_set_<mode>, VSX_D): Rewrite vector set in terms of vector concat to allow optimizing inserts from previous extracts. [gcc/testsuite] 2017-08-29 Michael Meissner <meiss...@linux.vnet.ibm.com> Back port from trunk 2017-08-07 Michael Meissner <meiss...@linux.vnet.ibm.com> PR target/81593 * gcc.target/powerpc/vec-setup.h: New tests to test various combinations of setting up vectors of 2 double word elements. * gcc.target/powerpc/vec-setup-long.c: Likewise. * gcc.target/powerpc/vec-setup-double.c: Likewise. * gcc.target/powerpc/vec-setup-be-long.c: Likewise. * gcc.target/powerpc/vec-setup-be-double.c: Likewise. Added: branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vec-setup-be-double.c - copied unchanged from r251429, trunk/gcc/testsuite/gcc.target/powerpc/vec-setup-be-double.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vec-setup-be-long.c - copied unchanged from r251429, trunk/gcc/testsuite/gcc.target/powerpc/vec-setup-be-long.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vec-setup-double.c - copied unchanged from r251429, trunk/gcc/testsuite/gcc.target/powerpc/vec-setup-double.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vec-setup-long.c - copied unchanged from r251429, trunk/gcc/testsuite/gcc.target/powerpc/vec-setup-long.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vec-setup.h - copied unchanged from r251429, trunk/gcc/testsuite/gcc.target/powerpc/vec-setup.h Modified: branches/gcc-7-branch/gcc/ChangeLog branches/gcc-7-branch/gcc/config/rs6000/vsx.md branches/gcc-7-branch/gcc/testsuite/ChangeLog