https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101267
--- Comment #7 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:a075350ee7bffa6c90d9d233de78515f498b5149 commit r12-1932-ga075350ee7bffa6c90d9d233de78515f498b5149 Author: Richard Biener <rguent...@suse.de> Date: Wed Jun 30 12:35:45 2021 +0200 tree-optimization/101267 - fix SLP vect with masked operations This fixes the missed handling of external/constant mask SLP operations, for the testcase in particular masked loads. The patch adjusts the vect_check_scalar_mask API to reflect the required vect_is_simple_use SLP compatible API plus adjusts for the special handling of masked loads in SLP discovery. The issue is likely latent. 2021-06-30 Richard Biener <rguent...@suse.de> PR tree-optimization/101267 * tree-vect-stmts.c (vect_check_scalar_mask): Adjust API and use SLP compatible interface of vect_is_simple_use. Reject not vectorized SLP defs for callers that do not support that. (vect_check_store_rhs): Handle masked stores and pass down the appropriate operator index. (vectorizable_call): Adjust. (vectorizable_store): Likewise. (vectorizable_load): Likewise. Handle SLP pecularity of masked loads. (vect_is_simple_use): Remove special-casing of masked stores. * gfortran.dg/pr101267.f90: New testcase.