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

--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Richard Biener <rgue...@gcc.gnu.org>:

https://gcc.gnu.org/g:47ddf4c7b1d4471cb9534f27844ab5e4279c2168

commit r11-3095-g47ddf4c7b1d4471cb9534f27844ab5e4279c2168
Author: Richard Biener <rguent...@suse.de>
Date:   Tue Sep 8 14:49:59 2020 +0200

    tree-optimization/96043 - BB vectorization costing improvement

    This makes the BB vectorizer cost independent SLP subgraphs
    separately.  While on pristine trunk and for x86_64 I failed to
    distill a testcase where the vectorizer would think _any_
    basic-block vectorization opportunity is not profitable I do
    have pending work that would make the cost savings of a
    profitable opportunity make another independently not
    profitable opportunity vectorized.

    2020-09-08  Richard Biener  <rguent...@suse.de>

            PR tree-optimization/96043
            * tree-vectorizer.h (_slp_instance::cost_vec): New.
            (_slp_instance::subgraph_entries): Likewise.
            (BB_VINFO_TARGET_COST_DATA): Remove.
            * tree-vect-slp.c (vect_free_slp_instance): Free
            cost_vec and subgraph_entries.
            (vect_analyze_slp_instance): Initialize them.
            (vect_slp_analyze_operations): Defer passing costs to
            the target, instead record them in the SLP graph entry.
            (get_ultimate_leader): New helper for graph partitioning.
            (vect_bb_partition_graph_r): Likewise.
            (vect_bb_partition_graph): New function to partition the
            SLP graph into independently costable parts.
            (vect_bb_vectorization_profitable_p): Adjust to work on
            a subgraph.
            (vect_bb_vectorization_profitable_p): New wrapper,
            discarding non-profitable vectorization of subgraphs.
            (vect_slp_analyze_bb_1): Call vect_bb_partition_graph before
            costing.

            * gcc.dg/vect/costmodel/x86_64/costmodel-pr69297.c: Adjust.

Reply via email to