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

--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Kewen Lin <li...@gcc.gnu.org>:

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

commit r14-2736-gd07504725973ccdec78929a09dc13e5ebd9472f6
Author: Kewen Lin <li...@linux.ibm.com>
Date:   Mon Jul 24 01:20:30 2023 -0500

    vect: Don't vectorize a single scalar iteration loop [PR110740]

    The function vect_update_epilogue_niters which has been
    removed by r14-2281 has some code taking care of that if
    there is only one scalar iteration left for epilogue then
    we won't try to vectorize it any more.

    Although costing should be able to care about it eventually,
    I think we still want this special casing without costing
    enabled, so this patch is to add it back in function
    vect_analyze_loop_costing, and make it more general for
    both main and epilogue loops as Richi suggested, it can fix
    some exposed failures on Power10:

     - gcc.target/powerpc/p9-vec-length-epil-{1,8}.c
     - gcc.dg/vect/slp-perm-{1,5,6,7}.c

            PR tree-optimization/110740

    gcc/ChangeLog:

            * tree-vect-loop.cc (vect_analyze_loop_costing): Do not vectorize a
            loop with a single scalar iteration.
  • [Bug target/110740] [14 regress... cvs-commit at gcc dot gnu.org via Gcc-bugs

Reply via email to