]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR tree-optimization/54489 (tree FRE uses an excessive amount of memory)
authorRichard Guenther <rguenther@suse.de>
Wed, 12 Sep 2012 14:46:22 +0000 (14:46 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Wed, 12 Sep 2012 14:46:22 +0000 (14:46 +0000)
commit40b178f44696219fb4781f1f555eb7962fbcd401
tree75f427c396cf952039512fc27fcfae7107035c92
parent0dadc27181235760099ae5c87a48b46b22b65d8b
re PR tree-optimization/54489 (tree FRE uses an excessive amount of memory)

2012-09-12  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/54489
* tree-ssa-pre.c: Include domwalk.h.
(in_fre): Remove.
(sccvn_valnum_from_value_id): New function.
(debug_bitmap_sets_for): Simplify.
(get_representative_for): Properly initialize the SCCVN valnum.
(create_expression_by_pieces): Likewise.
(insert_into_preds_of_block): Likewise.
(can_PRE_operation): Remove.
(make_values_for_phi): Simplify.
(compute_avail): Likewise.
(do_SCCVN_insertion): Remove.
(eliminate_avail, eliminate_push_avail, eliminate_insert):
New functions.
(eliminate): Split and perform a domwalk.
(eliminate_bb): Former eliminate part that is now dom-enter.
(eliminate_leave_block): New function.
(fini_eliminate): Likewise.
(init_pre): Simplify.
(fini_pre): Likewise.
(execute_pre): Fold into do_pre and do_fre.
(do_pre): Consume execute_pre.
(do_fre): Likewise.
* Makefile.in (tree-ssa-pre.o): Add domwalk.h dependency.

From-SVN: r191225
gcc/ChangeLog
gcc/Makefile.in
gcc/tree-ssa-pre.c