https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116647
--- Comment #6 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:898e3e95a6acf542baf03be95ce5bf7b3ad04276 commit r15-3547-g898e3e95a6acf542baf03be95ce5bf7b3ad04276 Author: Richard Biener <rguent...@suse.de> Date: Mon Sep 9 11:51:24 2024 +0200 tree-optimization/116647 - wrong classified double reduction The following avoids classifying a double reduction that's not actually a reduction in the outer loop (because its value isn't used outside of the outer loop). This avoids us ICEing on the unexpected stmt/SLP node arrangement. PR tree-optimization/116647 * tree-vect-loop.cc (vect_is_simple_reduction): Add missing check to double reduction detection. * gcc.dg/torture/pr116647.c: New testcase. * gcc.dg/vect/no-scevccp-pr86725-2.c: Adjust expected pattern. * gcc.dg/vect/no-scevccp-pr86725-4.c: Likewise.