re PR middle-end/59208 (ice in initialize_flags_in_bb)
authorRichard Biener <rguenther@suse.de>
Fri, 29 Nov 2013 14:37:07 +0000 (14:37 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Fri, 29 Nov 2013 14:37:07 +0000 (14:37 +0000)
commit6a58cccac65539b1ab89af806b829b5423b6de9a
treed8461c2dc057c316e7b6a321c5f73c5134c8fef6
parent78a14aa81e61e50a667854dc45243188cc861d95
re PR middle-end/59208 (ice in initialize_flags_in_bb)

2013-11-29  Richard Biener  <rguenther@suse.de>

PR middle-end/59208
* tree-ssa-operands.h (fini_ssa_operands, verify_ssa_operands,
free_stmt_operands, update_stmt_operands): Add struct function
argument.
* tree-ssa-operands.c: Remove uses of cfun, propagate struct
function argument from fini_ssa_operands, verify_ssa_operands,
free_stmt_operands and update_stmt_operands everywhere.
* tree-ssanames.h (release_ssa_name_fn): New.
(release_ssa_name): Inline wrapper around release_ssa_name_fn.
* tree-ssanames.c (release_ssa_name): Rename to ...
(release_ssa_name_fn): ... this and add struct function argument.
* gimple-ssa.h (update_stmt, update_stmt_if_modified): Adjust.
(update_stmt_fn): New function.
* tree-cfg.c (move_block_to_fn): Adjust.
* tree-if-conv.c (free_bb_predicate): Likewise.
* tree-ssa.c (verify_ssa): Likewise.
(delete_tree_ssa): Likewise.
* gimple-pretty-print.c (dump_gimple_mem_ops): Remove guard.
* cgraph.c (cgraph_redirect_edge_call_stmt_to_callee): Call
update_stmt_fn instead of update_stmt.

* g++.dg/torture/pr59208.C: New testcase.

From-SVN: r205528
12 files changed:
gcc/ChangeLog
gcc/cgraph.c
gcc/gimple-pretty-print.c
gcc/gimple-ssa.h
gcc/testsuite/ChangeLog
gcc/tree-cfg.c
gcc/tree-if-conv.c
gcc/tree-ssa-operands.c
gcc/tree-ssa-operands.h
gcc/tree-ssa.c
gcc/tree-ssanames.c
gcc/tree-ssanames.h