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

--- Comment #12 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Xi Ruoyao <xry...@gcc.gnu.org>:

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

commit r15-3189-gd3e71b99194bff878d3bf3b35f9528a350d10df9
Author: Xi Ruoyao <xry...@xry111.site>
Date:   Thu Aug 22 21:18:29 2024 +0800

    vect: Fix STMT_VINFO_DEF_TYPE check for odd/even widen mult [PR116348]

    After fixing PR116142 some code started to trigger an ICE with -O3
    -march=znver4.  Per Richard Biener who actually made this fix:

    "supportable_widening_operation fails at transform time - that's likely
    because vectorizable_reduction "puns" defs to internal_def"

    so the check should use STMT_VINFO_REDUC_DEF instead of checking if
    STMT_VINFO_DEF_TYPE is vect_reduction_def.

    gcc/ChangeLog:

            PR tree-optimization/116348
            * tree-vect-stmts.cc (supportable_widening_operation): Use
            STMT_VINFO_REDUC_DEF (x) instead of
            STMT_VINFO_DEF_TYPE (x) == vect_reduction_def.

    gcc/testsuite/ChangeLog:

            PR tree-optimization/116348
            * gcc.c-torture/compile/pr116438.c: New test.

    Co-authored-by: Richard Biener <rguent...@suse.de>

Reply via email to