re PR tree-optimization/64024 (gcc.dg/vect/vect-simd-clone-6.c ICEs)
authorJakub Jelinek <jakub@redhat.com>
Thu, 27 Nov 2014 11:03:12 +0000 (12:03 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 27 Nov 2014 11:03:12 +0000 (12:03 +0100)
commit6c9e85fb8b2fffbdac9c3170c98497d6d1bdc26b
treecf46507fed79cd2730c0fc10c373d2631ae276b2
parenta7c7534348a4f6af27f5d17b83356619ad26f73c
re PR tree-optimization/64024 (gcc.dg/vect/vect-simd-clone-6.c ICEs)

PR tree-optimization/64024
* tree-vectorizer.h (struct _stmt_vec_info): Remove simd_clone_fndecl
field.  Add simd_clone_info field.
(STMT_VINFO_SIMD_CLONE_FNDECL): Remove.
(STMT_VINFO_SIMD_CLONE_INFO): Define.
* tree-vect-stmts.c (vectorizable_simd_clone_call): Adjust for
STMT_VINFO_SIMD_CLONE_FNDECL becoming first element of
STMT_VINFO_SIMD_CLONE_INFO vector.  For linear arguments, remember
base and linear_step from analysis phase and use it during transform
phase, biased by the difference between LOOP_VINFO_NITERS{_UNCHANGED,}
multiplied by linear_step.
(free_stmt_vec_info): Release STMT_VINFO_SIMD_CLONE_INFO.

* gcc.dg/vect/vect-simd-clone-13.c: New test.
* gcc.dg/vect/vect-simd-clone-14.c: New test.

From-SVN: r218120
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/vect/vect-simd-clone-13.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/vect/vect-simd-clone-14.c [new file with mode: 0644]
gcc/tree-vect-stmts.c
gcc/tree-vectorizer.h