diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0822e0cb300..3ba3e90adf6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2005-05-12 Daniel Berlin + + 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 * c-common.h (statement_code_p): Don't declare. diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c index abc2a7e760e..f2e14a78171 100644 --- a/gcc/tree-ssa-pre.c +++ b/gcc/tree-ssa-pre.c @@ -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);