This zeroes matches when failing SLP discovery because of the
work limit.

Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed.

2021-01-04  Richard Biener  <rguent...@suse.de>

        PR tree-optimization/98393
        * tree-vect-slp.c (vect_build_slp_tree): Properly zero matches
        when hitting the limit.
---
 gcc/tree-vect-slp.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gcc/tree-vect-slp.c b/gcc/tree-vect-slp.c
index f886d4d876c..2c2cf637e73 100644
--- a/gcc/tree-vect-slp.c
+++ b/gcc/tree-vect-slp.c
@@ -1429,6 +1429,7 @@ vect_build_slp_tree (vec_info *vinfo,
       SLP_TREE_SCALAR_STMTS (res) = vNULL;
       SLP_TREE_DEF_TYPE (res) = vect_uninitialized_def;
       vect_free_slp_tree (res);
+      memset (matches, 0, sizeof (bool) * group_size);
       return NULL;
     }
   --*limit;
-- 
2.26.2

Reply via email to