https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89736
--- Comment #6 from kelvin at gcc dot gnu.org --- Author: kelvin Date: Mon Apr 22 16:09:13 2019 New Revision: 270493 URL: https://gcc.gnu.org/viewcvs?rev=270493&root=gcc&view=rev Log: gcc/ChangeLog: 2019-04-22 Kelvin Nilsen <kel...@gcc.gnu.org> Backport from mainline 2019-03-15 Kelvin Nilsen <kel...@gcc.gnu.org> PR target/87532 * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): When handling vec_extract, use modular arithmetic to allow constant selectors greater than vector length. * config/rs6000/rs6000.c (rs6000_expand_vector_extract): Allow V1TImode vectors to have constant selector values greater than 0. Use modular arithmetic to compute vector index. (rs6000_split_vec_extract_var): Use modular arithmetic to compute index for in-memory vectors. Correct code generation for in-register vectors. Use inner mode of vector rather than mode of destination for move instruction. (altivec_expand_vec_ext_builtin): Use modular arithmetic to compute index. 2019-04-12 Kelvin Nilsen <kel...@gcc.gnu.org> PR target/87532 * config/rs6000/vsx.md (*vsx_extract_<mode>_<VS_scalar>mode_var): Use QI inner mode with V16QI vector mode. gcc/testsuite/ChangeLog: 2019-04-22 Kelvin Nilsen <kel...@gcc.gnu.org> Backport from mainline 2019-03-15 Kelvin Nilsen <kel...@gcc.gnu.org> PR target/87532 * gcc.target/powerpc/pr87532-mc.c: New test. * gcc.target/powerpc/pr87532.c: New test. * gcc.target/powerpc/vec-extract-v16qiu-v2.h: New test. * gcc.target/powerpc/vec-extract-v16qiu-v2a.c: New test. * gcc.target/powerpc/vec-extract-v16qiu-v2b.c: New test. * gcc.target/powerpc/vsx-builtin-10a.c: New test. * gcc.target/powerpc/vsx-builtin-10b.c: New test. * gcc.target/powerpc/vsx-builtin-11a.c: New test. * gcc.target/powerpc/vsx-builtin-11b.c: New test. * gcc.target/powerpc/vsx-builtin-12a.c: New test. * gcc.target/powerpc/vsx-builtin-12b.c: New test. * gcc.target/powerpc/vsx-builtin-13a.c: New test. * gcc.target/powerpc/vsx-builtin-13b.c: New test. * gcc.target/powerpc/vsx-builtin-14a.c: New test. * gcc.target/powerpc/vsx-builtin-14b.c: New test. * gcc.target/powerpc/vsx-builtin-15a.c: New test. * gcc.target/powerpc/vsx-builtin-15b.c: New test. * gcc.target/powerpc/vsx-builtin-16a.c: New test. * gcc.target/powerpc/vsx-builtin-16b.c: New test. * gcc.target/powerpc/vsx-builtin-17a.c: New test. * gcc.target/powerpc/vsx-builtin-17b.c: New test. * gcc.target/powerpc/vsx-builtin-18a.c: New test. * gcc.target/powerpc/vsx-builtin-18b.c: New test. * gcc.target/powerpc/vsx-builtin-19a.c: New test. * gcc.target/powerpc/vsx-builtin-19b.c: New test. * gcc.target/powerpc/vsx-builtin-20a.c: New test. * gcc.target/powerpc/vsx-builtin-20b.c: New test. * gcc.target/powerpc/vsx-builtin-9a.c: New test. * gcc.target/powerpc/vsx-builtin-9b.c: New test. 2019-03-19 Kelvin Nilsen <kel...@gcc.gnu.org> PR target/89736 * gcc.target/powerpc/pr87532-mc.c: Modify dejagnu directives to restrict this test to vsx targets. Added: branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/pr87532-mc.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/pr87532.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vec-extract-v16qiu-v2.h branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vec-extract-v16qiu-v2a.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vec-extract-v16qiu-v2b.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-10a.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-10b.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-11a.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-11b.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-12a.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-12b.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-13a.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-13b.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-14a.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-14b.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-15a.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-15b.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-16a.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-16b.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-17a.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-17b.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-18a.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-18b.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-19a.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-19b.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-20a.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-20b.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-9a.c branches/gcc-7-branch/gcc/testsuite/gcc.target/powerpc/vsx-builtin-9b.c Modified: branches/gcc-7-branch/gcc/ChangeLog branches/gcc-7-branch/gcc/config/rs6000/rs6000-c.c branches/gcc-7-branch/gcc/config/rs6000/rs6000.c branches/gcc-7-branch/gcc/config/rs6000/vsx.md branches/gcc-7-branch/gcc/testsuite/ChangeLog