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

--- Comment #14 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Fri Oct 26 07:38:59 2018
New Revision: 265522

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

        PR tree-optimization/87105
        * tree-vectorizer.h (_slp_tree::refcnt): New member.
        * tree-vect-slp.c (vect_free_slp_tree): Decrement and honor
        refcnt.
        (vect_create_new_slp_node): Initialize refcnt to one.
        (bst_traits): Move.
        (scalar_stmts_set_t, bst_fail): Remove.
        (vect_build_slp_tree_2): Add bst_map argument and adjust calls.
        (vect_build_slp_tree): Add bst_map argument and lookup
        already created SLP nodes.
        (vect_print_slp_tree): Handle a SLP graph, print SLP node
        addresses.
        (vect_slp_rearrange_stmts): Handle a SLP graph.
        (vect_analyze_slp_instance): Adjust and free SLP nodes from
        the CSE map.  Fix indenting.
        (vect_schedule_slp_instance): Add short-cut.

        * g++.dg/vect/slp-pr87105.cc: Adjust.
        * gcc.dg/torture/20181024-1.c: New testcase.
        * g++.dg/opt/20181025-1.C: Likewise.

Added:
    trunk/gcc/testsuite/g++.dg/opt/20181025-1.C
    trunk/gcc/testsuite/gcc.dg/torture/20181024-1.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/g++.dg/vect/slp-pr87105.cc
    trunk/gcc/tree-vect-slp.c
    trunk/gcc/tree-vectorizer.h

Reply via email to