diff options
author | Richard Biener <rguenther@suse.de> | 2022-07-07 09:29:55 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2022-07-07 10:49:45 +0200 |
commit | 1e1fdb729d99647bb90d8a18afa1a5fc3c2d3a22 (patch) | |
tree | 375d7f7156f34c4b1ce14561cf3c110d260ce787 /gcc/tree-ssa-loop-manip.h | |
parent | e5a9d60317852a7323e46109fa366e630b8b5bae (diff) | |
download | gcc-1e1fdb729d99647bb90d8a18afa1a5fc3c2d3a22.zip gcc-1e1fdb729d99647bb90d8a18afa1a5fc3c2d3a22.tar.gz gcc-1e1fdb729d99647bb90d8a18afa1a5fc3c2d3a22.tar.bz2 |
Speed up LC SSA rewrite more
In many cases loops have only one exit or a variable is only live
across one of the exits. In this case we know that all uses
outside of the loop will be dominated by the single LC PHI node
we insert. If that holds for all variables requiring LC SSA PHIs
then we can simplify the update_ssa process, avoiding the
(iterated) dominance frontier computations.
* tree-ssa-loop-manip.cc (add_exit_phis_var): Return the
number of LC PHIs inserted.
(add_exit_phis): Return whether any variable required
multiple LC PHI nodes.
(rewrite_into_loop_closed_ssa_1): Use TODO_update_ssa_no_phi
when possible.
Diffstat (limited to 'gcc/tree-ssa-loop-manip.h')
0 files changed, 0 insertions, 0 deletions