https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115597
--- Comment #3 from Tamar Christina <tnfchris at gcc dot gnu.org> --- > > Can you check whether that fixes the issue? > > diff --git a/gcc/tree-vect-slp.cc b/gcc/tree-vect-slp.cc > index 9465d94de1a..212d5f97f7d 100644 > --- a/gcc/tree-vect-slp.cc > +++ b/gcc/tree-vect-slp.cc > @@ -6085,7 +6085,6 @@ static void > vect_cse_slp_nodes (scalar_stmts_to_slp_tree_map_t *bst_map, slp_tree& node) > { > if (SLP_TREE_DEF_TYPE (node) == vect_internal_def > - && SLP_TREE_CODE (node) != VEC_PERM_EXPR > /* Besides some VEC_PERM_EXPR, two-operator nodes also > lack scalar stmts and thus CSE doesn't work via bst_map. Ideally > we'd have sth that works for all internal and external nodes. */ Yeah that seems to do it, can compile SPECFP again.