re PR tree-optimization/21532 (ICE caused by PRE dead instruction removal)
authorDaniel Berlin <dberlin@dberlin.org>
Thu, 12 May 2005 17:11:16 +0000 (17:11 +0000)
committerDaniel Berlin <dberlin@gcc.gnu.org>
Thu, 12 May 2005 17:11:16 +0000 (17:11 +0000)
2005-05-12  Daniel Berlin  <dberlin@dberlin.org>

Fix PR tree-optimization/21532
* tree-ssa-pre.c (create_expression_by_pieces): stmt
needs to go onto the inserted_exprs list.

From-SVN: r99617

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

index 0822e0cb3003e7af999903c7e00c25db5724494b..3ba3e90adf646beafbe8ab9f695a30c5f2b1bf77 100644 (file)
@@ -1,3 +1,9 @@
+2005-05-12  Daniel Berlin  <dberlin@dberlin.org>
+       
+       Fix PR tree-optimization/21532
+       * tree-ssa-pre.c (create_expression_by_pieces): stmt
+       needs to go onto the inserted_exprs list.
+
 2005-05-12  Ian Lance Taylor  <ian@airs.com>
 
        * c-common.h (statement_code_p): Don't declare.
index abc2a7e760e941398034841b053c48d25b0e5a13..f2e14a7817108570606733e58a635eece4028965 100644 (file)
@@ -1369,6 +1369,8 @@ create_expression_by_pieces (basic_block block, tree expr, tree stmts)
          tree forcedname = TREE_OPERAND (stmt, 0);
          tree forcedexpr = TREE_OPERAND (stmt, 1);
          tree val = vn_lookup_or_add (forcedexpr, NULL);
+         
+         VEC_safe_push (tree, heap, inserted_exprs, stmt);
          vn_add (forcedname, val, NULL);
          bitmap_value_replace_in_set (NEW_SETS (block), forcedname);
          bitmap_value_replace_in_set (AVAIL_OUT (block), forcedname);