]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR bootstrap/87134 (SEGV in cc1 caused by r263875)
authorRichard Biener <rguenther@suse.de>
Thu, 13 Sep 2018 11:31:58 +0000 (11:31 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Thu, 13 Sep 2018 11:31:58 +0000 (11:31 +0000)
2018-09-13  Richard Biener  <rguenther@suse.de>

PR bootstrap/87134
* tree-ssa-sccvn.c (vn_nary_op_insert_into): Fix assert.
(vn_nary_op_insert_pieces_predicated): Do not write useless
valid_dominated_by_p entry outside of the allocated storage.

From-SVN: r264268

gcc/ChangeLog
gcc/tree-ssa-sccvn.c

index e62f461df843a9fb8a335f86f2320cc40ef437cb..6583bc01220c3ff34bb441fc381822605b177561 100644 (file)
@@ -1,3 +1,10 @@
+2018-09-13  Richard Biener  <rguenther@suse.de>
+
+       PR bootstrap/87134
+       * tree-ssa-sccvn.c (vn_nary_op_insert_into): Fix assert.
+       (vn_nary_op_insert_pieces_predicated): Do not write useless
+       valid_dominated_by_p entry outside of the allocated storage.
+
 2018-09-13  Omar Sandoval  <osandov@osandov.com>
            Tom de Vries  <tdevries@suse.de>
 
index 2a837c268211ec388c0d92404c400cca03ec9d5d..7f2562fb4d35cba7645cb6647eee165f52fad5b4 100644 (file)
@@ -3036,8 +3036,7 @@ vn_nary_op_insert_into (vn_nary_op_t vno, vn_nary_op_table_type *table,
       vno->hashcode = vn_nary_op_compute_hash (vno);
       gcc_assert (! vno->predicated_values
                  || (! vno->u.values->next
-                     && vno->u.values->valid_dominated_by_p[0] != EXIT_BLOCK
-                     && vno->u.values->valid_dominated_by_p[1] == EXIT_BLOCK));
+                     && vno->u.values->n == 1));
     }
 
   slot = table->find_slot_with_hash (vno, vno->hashcode, INSERT);
@@ -3216,7 +3215,6 @@ vn_nary_op_insert_pieces_predicated (unsigned int length, enum tree_code code,
   vno1->u.values->result = result;
   vno1->u.values->n = 1;
   vno1->u.values->valid_dominated_by_p[0] = pred_e->dest->index;
-  vno1->u.values->valid_dominated_by_p[1] = EXIT_BLOCK;
   return vn_nary_op_insert_into (vno1, valid_info->nary, true);
 }