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

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

https://gcc.gnu.org/g:e3837b6f6c28a1d2cea3a69efbda795ea3fb8816

commit r13-6384-ge3837b6f6c28a1d2cea3a69efbda795ea3fb8816
Author: Richard Biener <[email protected]>
Date:   Tue Feb 28 15:34:27 2023 +0100

    tree-optimization/108950 - widen-sum reduction ICE

    When we end up with a widen-sum with an invariant smaller operand
    the reduction code uses a wrong vector type for it, causing
    IL checking ICEs.  The following fixes that and the inefficiency
    of using a widen-sum with a widenend invariant operand as well
    by actually performing the check the following comment wants.

            PR tree-optimization/108950
            * tree-vect-patterns.cc (vect_recog_widen_sum_pattern):
            Check oprnd0 is defined in the loop.
            * tree-vect-loop.cc (vectorizable_reduction): Record all
            operands vector types, compute that of invariants and
            properly update their SLP nodes.

            * gcc.dg/vect/pr108950.c: New testcase.

Reply via email to