Commit 687aed9c by Richard Biener Committed by Richard Biener

passes.c (execute_function_todo): Verify loops if they are said to be up-to-date.

2017-05-11  Richard Biener  <rguenther@suse.de>

	* passes.c (execute_function_todo): Verify loops if they are
	said to be up-to-date.
	* cfgexpand.c (pass_expand::execute): Discard loops for -dx.
	* trans-mem.c (pass_tm_edges::execute): Mark loops for fixup.

From-SVN: r247879
parent eb5095f8
2017-05-11 Richard Biener <rguenther@suse.de>
* passes.c (execute_function_todo): Verify loops if they are
said to be up-to-date.
* cfgexpand.c (pass_expand::execute): Discard loops for -dx.
* trans-mem.c (pass_tm_edges::execute): Mark loops for fixup.
2017-05-10 John David Anglin <danglin@gcc.gnu.org>
PR target/80090
......
......@@ -6542,6 +6542,14 @@ pass_expand::execute (function *fun)
set_block_levels (DECL_INITIAL (fun->decl), 0);
default_rtl_profile ();
/* For -dx discard loops now, otherwise IL verify in clean_state will
ICE. */
if (rtl_dump_and_exit)
{
cfun->curr_properties &= ~PROP_loops;
loop_optimizer_finalize ();
}
timevar_pop (TV_POST_EXPAND);
return 0;
......
......@@ -1979,8 +1979,12 @@ execute_function_todo (function *fn, void *data)
&& !from_ipa_pass)
verify_flow_info ();
if (current_loops
&& loops_state_satisfies_p (LOOP_CLOSED_SSA))
verify_loop_closed_ssa (false);
&& ! loops_state_satisfies_p (LOOPS_NEED_FIXUP))
{
verify_loop_structure ();
if (loops_state_satisfies_p (LOOP_CLOSED_SSA))
verify_loop_closed_ssa (false);
}
if (cfun->curr_properties & PROP_rtl)
verify_rtl_sharing ();
}
......
......@@ -3369,6 +3369,8 @@ pass_tm_edges::execute (function *fun)
must be rebuilt completely. Otherwise we'll crash trying to update
the SSA web in the TODO section following this pass. */
free_dominance_info (CDI_DOMINATORS);
/* We'ge also wrecked loops badly with inserting of abnormal edges. */
loops_state_set (LOOPS_NEED_FIXUP);
bitmap_obstack_release (&tm_obstack);
all_tm_regions = NULL;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment