tree-optimization/95679 - properly signal changes from propagate_into_phi_args
authorRichard Biener <rguenther@suse.de>
Wed, 29 Jul 2020 07:59:01 +0000 (09:59 +0200)
committerRichard Biener <rguenther@suse.de>
Wed, 29 Jul 2020 10:34:29 +0000 (12:34 +0200)
commit8e8792a347c87dbb82b4cf75ec3452bc5cd1d3db
treedbdb0c30128a41f48623c05e8b7dbc42641df2d8
parent6de5600a8bd1ef0ad3d57670efdcc68bb3484276
tree-optimization/95679 - properly signal changes from propagate_into_phi_args

This restores a lost setting of something_changed with the
recent refactoring of the substitute and fold engine.  The
reported ICE in the PR was meanwhile mitigated in other ways
but the issue can still result in missed optimizations via
failed runs of CFG cleanup.

2020-07-29  Richard Biener  <rguenther@suse.de>

PR tree-optimization/95679
* tree-ssa-propagate.h
(substitute_and_fold_engine::propagate_into_phi_args): Return
whether anything changed.
* tree-ssa-propagate.c
(substitute_and_fold_engine::propagate_into_phi_args): Likewise.
(substitute_and_fold_dom_walker::before_dom_children): Update
something_changed.
gcc/tree-ssa-propagate.c
gcc/tree-ssa-propagate.h