poly_int: vectorizable_induction
commit833ff7f4de4d89fc352a5f4ce49623f2465def70
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 3 Jan 2018 07:15:54 +0000 (3 07:15 +0000)
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 3 Jan 2018 07:15:54 +0000 (3 07:15 +0000)
tree290a2b4c5b9cd2e00b2a1704ce9a24f65266a156
parentce0687552e6b767db0adbb82a4943fa559e35a47
poly_int: vectorizable_induction

This patch makes vectorizable_induction cope with variable-length
vectors.  For now we punt on SLP inductions, but patchees after
the main SVE submission add support for those too.

2018-01-03  Richard Sandiford  <richard.sandiford@linaro.org>
    Alan Hayward  <alan.hayward@arm.com>
    David Sherwood  <david.sherwood@arm.com>

gcc/
* tree-vect-loop.c (vectorizable_induction): Treat the number
of units as polynomial.  Punt on SLP inductions.  Use an integer
VEC_SERIES_EXPR for variable-length integer reductions.  Use a
cast of such a series for variable-length floating-point
reductions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@256134 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/tree-vect-loop.c