]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR tree-optimization/54967 (ICE in check_loop_closed_ssa_use, at tree-ssa-loop...
authorJan Hubicka <jh@suse.cz>
Tue, 23 Oct 2012 09:57:36 +0000 (11:57 +0200)
committerJan Hubicka <hubicka@gcc.gnu.org>
Tue, 23 Oct 2012 09:57:36 +0000 (09:57 +0000)
commit1a7de2015dfb81f40015a95be98abe50ad7382f0
treedff1e819fae3b996fcd725e178165e8cf066a614
parente8028ecdd02be651ec23cfdbc7e31c5b4b198ce1
re PR tree-optimization/54967 (ICE in check_loop_closed_ssa_use, at tree-ssa-loop-manip.c:55)

PR middle-end/54967
* cfgloopmanip.c (fix_bb_placements): Add loop_closed_ssa_invalidated;
track basic blocks that moved out of their loops.
(unloop): Likewise.
(remove_path): Update.
(fix_loop_placements): Update.
* tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Add
loop_closed_ssa_invalidated parameter; pass it around.
(canonicalize_loop_induction_variables): Update loop closed
SSA form if needed.
(tree_unroll_loops_completely): Likewise; do irred update out of
the outer loop; verify that SSA form is closed.
* cfgloop.h (unrloop): Update.

* gfortran.dg/pr54967.f90: New testcase.

From-SVN: r192709
gcc/ChangeLog
gcc/cfgloop.h
gcc/cfgloopmanip.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/pr54967.f90 [new file with mode: 0644]
gcc/tree-ssa-loop-ivcanon.c