https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84037

--- Comment #22 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Wed Feb  7 15:46:17 2018
New Revision: 257453

URL: https://gcc.gnu.org/viewcvs?rev=257453&root=gcc&view=rev
Log:
2018-02-07  Richard Biener  <rguent...@suse.de>

        PR tree-optimization/84037
        * tree-vectorizer.h (struct _loop_vec_info): Add ivexpr_map member.
        (cse_and_gimplify_to_preheader): Declare.
        (vect_get_place_in_interleaving_chain): Likewise.
        * tree-vect-loop.c (_loop_vec_info::_loop_vec_info): Initialize
        ivexpr_map.
        (_loop_vec_info::~_loop_vec_info): Delete it.
        (cse_and_gimplify_to_preheader): New function.
        * tree-vect-slp.c (vect_get_place_in_interleaving_chain): Export.
        * tree-vect-stmts.c (vectorizable_store): CSE base and steps.
        (vectorizable_load): Likewise.  For grouped stores always base
        the IV on the first element.
        * tree-vect-loop-manip.c (vect_loop_versioning): Unshare versioning
        condition before gimplifying.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/tree-vect-loop-manip.c
    trunk/gcc/tree-vect-loop.c
    trunk/gcc/tree-vect-slp.c
    trunk/gcc/tree-vect-stmts.c
    trunk/gcc/tree-vectorizer.h

Reply via email to