aboutsummaryrefslogtreecommitdiff
path: root/gcc/cfgexpand.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2017-05-11 07:26:32 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2017-05-11 07:26:32 +0000
commit687aed9cc8c53b7833df9c62912292c17fdbc97f (patch)
tree771604cdd80818bfa104f17817ef974cee473876 /gcc/cfgexpand.c
parenteb5095f83f43c7ed972574047551b4538fa23f5e (diff)
downloadgcc-687aed9cc8c53b7833df9c62912292c17fdbc97f.zip
gcc-687aed9cc8c53b7833df9c62912292c17fdbc97f.tar.gz
gcc-687aed9cc8c53b7833df9c62912292c17fdbc97f.tar.bz2
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
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r--gcc/cfgexpand.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index 66af699..e38c8e4 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -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;