https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117874
--- Comment #8 from GCC 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:d4f3c3efc669afe6e270344ff73c7471fea67ce7 commit r15-5893-gd4f3c3efc669afe6e270344ff73c7471fea67ce7 Author: Richard Biener <rguent...@suse.de> Date: Tue Dec 3 08:52:48 2024 +0100 Use the number of relevant stmts to limit SLP build The following removes scalar stmt counting from loop vectorization and using that as base to limit both the SLP tree final size and discovery. Instead use the number of relevant stmts for that which is conveniently the number of stmt_vec_infos we create which in turn includes things like pattern stmts. PR tree-optimization/117874 * tree-vectorizer.h (vec_info_shared::n_stmts): Remove. (LOOP_VINFO_N_STMTS): Likewise. * tree-vectorizer.cc (vec_info_shared::vec_info_shared): Adjust. * tree-vect-loop.cc (vect_get_datarefs_in_loop): Do not count stmts. (vect_analyze_loop_2): Adjust. Pass stmt_vec_info.length () to vect_analyze_slp as SLP tree size limit.