https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71595

--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
diff --git a/gcc/tree-ssa-loop-ivcanon.c b/gcc/tree-ssa-loop-ivcanon.c
index beb65b0..4af39fa 100644
--- a/gcc/tree-ssa-loop-ivcanon.c
+++ b/gcc/tree-ssa-loop-ivcanon.c
@@ -647,7 +647,7 @@ unloop_loops (bitmap loop_closed_ssa_invalidated,
       latch_edge->flags |= flags;
       latch_edge->goto_locus = locus;

-      latch_edge->dest->loop_father = current_loops->tree_root;
+      add_bb_to_loop (latch_edge->dest, current_loops->tree_root);
       latch_edge->dest->count = 0;
       latch_edge->dest->frequency = 0;
       set_immediate_dominator (CDI_DOMINATORS, latch_edge->dest,
latch_edge->src);

fixes that verification issue (but not the loop-closed SSA issue).  It looks
like remove_path doesn't properly update loop_closed_ssa_invalidated.

Reply via email to