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

--- Comment #10 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:52a170b1a1818b7521c25e76271638a448b3f630

commit r11-6613-g52a170b1a1818b7521c25e76271638a448b3f630
Author: Richard Biener <rguent...@suse.de>
Date:   Tue Jan 12 11:17:33 2021 +0100

    tree-optimization/98550 - fix BB vect unrolling check

    This fixes the check that disqualifies BB vectorization because of
    required unrolling to match up with the later exact_div we do.  To
    not disable the ability to split groups that do not match up
    exactly with a choosen vector type this also introduces a soft-fail
    mechanism to vect_build_slp_tree_1 which delays failing to after
    the matches[] array is populated from other checks and only then
    determines the split point according to the vector type.

    2021-01-12  Richard Biener  <rguent...@suse.de>

            PR tree-optimization/98550
            * tree-vect-slp.c (vect_record_max_nunits): Check whether
            the group size is a multiple of the vector element count.
            (vect_build_slp_tree_1): When we need to fail because
            the vector type choosen causes unrolling do so lazily
            without affecting matches only at the end to guide group splitting.

            * g++.dg/opt/pr98550.C: New testcase.

Reply via email to