http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54967
--- Comment #9 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-10-23 09:57:40 UTC --- Author: hubicka Date: Tue Oct 23 09:57:36 2012 New Revision: 192709 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=192709 Log: 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. Added: trunk/gcc/testsuite/gfortran.dg/pr54967.f90 Modified: trunk/gcc/ChangeLog trunk/gcc/cfgloop.h trunk/gcc/cfgloopmanip.c trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-ssa-loop-ivcanon.c