diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-04-28 14:42:06 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-04-28 14:42:06 +0000 |
commit | 2bdae24115fe3601b44597bcd61f1004d6838024 (patch) | |
tree | 1b295f4298bb5f0dd1036e0f1f98ed1b14f1d176 /gcc/passes.c | |
parent | 060fc20619be5420a01d15844a8e3635ebc9753b (diff) | |
download | gcc-2bdae24115fe3601b44597bcd61f1004d6838024.tar.gz |
2014-04-28 Richard Biener <rguenther@suse.de>
* tree-pass.h (TODO_verify_il): Define.
(TODO_verify_all): Complete properly.
* passes.c (execute_function_todo): Move existing loop-closed
SSA verification under TODO_verify_il.
(execute_one_pass): Trigger TODO_verify_il at todo-after time.
* graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps):
Fix tree sharing issue.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209865 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/passes.c')
-rw-r--r-- | gcc/passes.c | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/gcc/passes.c b/gcc/passes.c index c0a76d62d21..45f31d79521 100644 --- a/gcc/passes.c +++ b/gcc/passes.c @@ -1768,8 +1768,7 @@ execute_function_todo (function *fn, void *data) } #if defined ENABLE_CHECKING - if (flags & TODO_verify_ssa - || (current_loops && loops_state_satisfies_p (LOOP_CLOSED_SSA))) + if (flags & TODO_verify_ssa) { verify_gimple_in_cfg (cfun); verify_ssa (true); @@ -1778,8 +1777,18 @@ execute_function_todo (function *fn, void *data) verify_gimple_in_cfg (cfun); if (flags & TODO_verify_flow) verify_flow_info (); - if (current_loops && loops_state_satisfies_p (LOOP_CLOSED_SSA)) - verify_loop_closed_ssa (false); + if (flags & TODO_verify_il) + { + if (current_loops + && loops_state_satisfies_p (LOOP_CLOSED_SSA)) + { + if (!(flags & (TODO_verify_stmts|TODO_verify_ssa))) + verify_gimple_in_cfg (cfun); + if (!(flags & TODO_verify_ssa)) + verify_ssa (true); + verify_loop_closed_ssa (false); + } + } if (flags & TODO_verify_rtl_sharing) verify_rtl_sharing (); #endif @@ -2167,7 +2176,7 @@ execute_one_pass (opt_pass *pass) check_profile_consistency (pass->static_pass_number, 0, true); /* Run post-pass cleanup and verification. */ - execute_todo (todo_after | pass->todo_flags_finish); + execute_todo (todo_after | pass->todo_flags_finish | TODO_verify_il); if (profile_report && cfun && (cfun->curr_properties & PROP_cfg)) check_profile_consistency (pass->static_pass_number, 1, true); |