re PR middle-end/63155 (memory hog)
authorRichard Biener <rguenther@suse.de>
Fri, 5 Oct 2018 12:54:51 +0000 (12:54 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Fri, 5 Oct 2018 12:54:51 +0000 (12:54 +0000)
commitf48bd5e43acaa30252437f2d6faae1d18de08388
tree42392c5fdf3eff60fc7e87cd88eea90da756698e
parent700adeb6fd65528758f9dbcd0aaf6345e14d312c
re PR middle-end/63155 (memory hog)

2018-10-05  Richard Biener  <rguenther@suse.de>

PR tree-optimization/63155
* tree-ssa-ccp.c (ccp_propagate::visit_phi): Avoid excess
vertical space in dumpfiles.
* tree-ssa-propagate.h
(ssa_propagation_engine::process_ssa_edge_worklist): Remove.
* tree-ssa-propagate.c (cfg_blocks_back): New global.
(ssa_edge_worklist_back): Likewise.
(curr_order): Likewise.
(cfg_blocks_get): Remove abstraction.
(cfg_blocks_add): Likewise.
(cfg_blocks_empty_p): Likewise.
(add_ssa_edge): Add to current or next worklist based on
RPO index.
(add_control_edge): Likewise.
(ssa_propagation_engine::process_ssa_edge_worklist): Fold
into ...
(ssa_propagation_engine::ssa_propagate): ... here.  Unify
iteration from CFG and SSA edge worklist so we process
everything in RPO order, prioritizing forward progress
over iteration.
(ssa_prop_init): Allocate new worklists, do not dump
immediate uses.
(ssa_prop_fini): Free new worklists.

From-SVN: r264869
gcc/ChangeLog
gcc/tree-ssa-ccp.c
gcc/tree-ssa-propagate.c
gcc/tree-ssa-propagate.h