https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104010
--- Comment #15 from CVS 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:353434b65ef7972172597d232ae17022d9a57244 commit r12-8195-g353434b65ef7972172597d232ae17022d9a57244 Author: Richard Biener <rguent...@suse.de> Date: Wed Apr 13 13:49:45 2022 +0200 tree-optimization/104010 - fix SLP scalar costing with patterns When doing BB vectorization the scalar cost compute is derailed by patterns, causing lanes to be considered live and thus not costed on the scalar side. For the testcase in PR104010 this prevents vectorization which was done by GCC 11. PR103941 shows similar cases of missed optimizations that are fixed by this patch. 2022-04-13 Richard Biener <rguent...@suse.de> PR tree-optimization/104010 PR tree-optimization/103941 * tree-vect-slp.cc (vect_bb_slp_scalar_cost): When we run into stmts in patterns continue walking those for uses outside of the vectorized region instead of marking the lane live. * gcc.target/i386/pr103941-1.c: New testcase. * gcc.target/i386/pr103941-2.c: Likewise.