https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68117
--- Comment #25 from Markus Trippelsdorf <trippels at gcc dot gnu.org> --- I think the issue is caused by Richi's r229405. In this patch the following two lines were accidentally removed from tree-ssa.c (delete_tree_ssa): - /* We no longer need the edge variable maps. */ - redirect_edge_var_map_destroy (); Restoring them fixes the bug for me: diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c index 84a4d5b..02fca4c 100644 --- a/gcc/tree-ssa.c +++ b/gcc/tree-ssa.c @@ -1126,6 +1126,9 @@ delete_tree_ssa (struct function *fn) fn->gimple_df->decls_to_pointers = NULL; fn->gimple_df->modified_noreturn_calls = NULL; fn->gimple_df = NULL; + + /* We no longer need the edge variable maps. */ + redirect_edge_var_map_destroy (); } /* Return true if EXPR is a useless type conversion, otherwise return