tree-vect-stmts.c (vectorizable_load): Compute the pointer adjustment for gaps at...
authorRichard Biener <rguenther@suse.de>
Mon, 8 Jun 2015 12:40:20 +0000 (12:40 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Mon, 8 Jun 2015 12:40:20 +0000 (12:40 +0000)
commit9b999e8c82296dc7acee8e74b49cab47004c47a5
tree456b16db69b5530668be1975ccba10590686beb4
parent7026b8dfd18fc18e7110c193b1a41d4bb119c8c7
tree-vect-stmts.c (vectorizable_load): Compute the pointer adjustment for gaps at the end of a SLP load group properly.

2015-06-08  Richard Biener  <rguenther@suse.de>

* tree-vect-stmts.c (vectorizable_load): Compute the pointer
adjustment for gaps at the end of a SLP load group properly.
* tree-vect-slp.c (vect_supported_load_permutation_p): Allow
all permutations we can generate.
(vect_transform_slp_perm_load): Use the correct group-size.

* gcc.dg/vect/slp-perm-10.c: New testcase.
* gcc.dg/vect/slp-23.c: Adjust.
* gcc.dg/torture/pr53366-2.c: Also verify cross-iteration
vector pointer update.

From-SVN: r224221
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/torture/pr53366-2.c
gcc/testsuite/gcc.dg/vect/slp-23.c
gcc/testsuite/gcc.dg/vect/slp-perm-10.c [new file with mode: 0644]
gcc/tree-vect-slp.c
gcc/tree-vect-stmts.c