https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120808
--- Comment #4 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:143e50f2ed56da6c9fab9c6344465832b641ca21 commit r16-1672-g143e50f2ed56da6c9fab9c6344465832b641ca21 Author: Richard Biener <rguent...@suse.de> Date: Wed Jun 25 09:24:41 2025 +0200 tree-optimization/120808 - SLP build with mixed .FMA/.FMS The following allows SLP build to succeed when mixing .FMA/.FMS in different lanes like we handle mixed plus/minus. This does not yet address SLP pattern matching to not being able to form a FMADDSUB from this. PR tree-optimization/120808 * tree-vectorizer.h (compatible_calls_p): Add flag to indicate a FMA/FMS pair is allowed. * tree-vect-slp.cc (compatible_calls_p): Likewise. (vect_build_slp_tree_1): Allow mixed .FMA/.FMS as two-operator. (vect_build_slp_tree_2): Handle calls in two-operator SLP build. * tree-vect-slp-patterns.cc (compatible_complex_nodes_p): Adjust. * gcc.dg/vect/bb-slp-pr120808.c: New testcase.