From 6d42d1e223deaf866062e11bd51ee99441ad8871 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Mon, 12 Oct 2020 09:31:16 +0200 Subject: [PATCH] More consistently split SLP groups This appropriately makes matches all true after successful SLP discovery to reliably succeed splitting. We were picking up an eventual all false built-up from scalars state in some cases. 2020-10-12 Richard Biener * tree-vect-slp.c (vect_analyze_slp_instance): Set matches to true after successful discovery but forced split. --- gcc/tree-vect-slp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/tree-vect-slp.c b/gcc/tree-vect-slp.c index 495fb970e24..dd2042a4db5 100644 --- a/gcc/tree-vect-slp.c +++ b/gcc/tree-vect-slp.c @@ -2283,7 +2283,7 @@ vect_analyze_slp_instance (vec_info *vinfo, dump_printf_loc (MSG_NOTE, vect_location, "SLP discovery succeeded but node needs " "splitting\n"); - matches[0] = true; + memset (matches, true, group_size); matches[group_size / const_max_nunits * const_max_nunits] = false; vect_free_slp_tree (node); } -- 2.30.2