diff options
author | Richard Biener <rguenther@suse.de> | 2013-04-10 11:33:31 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2013-04-10 11:33:31 +0000 |
commit | bb313b932bb976243e5d2a5e0bc38f8adfc1a235 (patch) | |
tree | 343ea98fe2010bf89962a5e0aee3ab18b4410a4a /gcc/ira.c | |
parent | 793d9a16a2f863af4552edf27d846a1a71815b9c (diff) | |
download | gcc-bb313b932bb976243e5d2a5e0bc38f8adfc1a235.zip gcc-bb313b932bb976243e5d2a5e0bc38f8adfc1a235.tar.gz gcc-bb313b932bb976243e5d2a5e0bc38f8adfc1a235.tar.bz2 |
passes.c (execute_todo): Do not call ggc_collect conditional here.
2013-04-10 Richard Biener <rguenther@suse.de>
* passes.c (execute_todo): Do not call ggc_collect conditional here.
(execute_one_ipa_transform_pass): But unconditionally here.
(execute_one_pass): And here.
(init_optimization_passes): Remove reload pass.
* tree-pass.h (TODO_ggc_collect): Remove.
(pass_reload): Likewise.
* ira.c (do_reload): Merge into ...
(ira): ... this.
(rest_of_handle_reload): Remove.
(pass_reload): Likewise.
* config/i386/i386.c (ix86_option_override): Refer to ira instead
of reload for vzeroupper pass placement.
* <everywhere>: Remove TODO_ggc_collect from todo_flags_start
and todo_flags_finish of all passes.
* g++.dg/pr55604.C: Use -fdump-rtl-ira.
From-SVN: r197671
Diffstat (limited to 'gcc/ira.c')
-rw-r--r-- | gcc/ira.c | 42 |
1 files changed, 3 insertions, 39 deletions
@@ -4359,6 +4359,8 @@ ira (FILE *f) int rebuild_p; bool saved_flag_caller_saves = flag_caller_saves; enum ira_region saved_flag_ira_region = flag_ira_region; + basic_block bb; + bool need_dce; ira_conflicts_p = optimize > 0; @@ -4588,13 +4590,6 @@ ira (FILE *f) flag_caller_saves = saved_flag_caller_saves; flag_ira_region = saved_flag_ira_region; } -} - -static void -do_reload (void) -{ - basic_block bb; - bool need_dce; if (flag_ira_verbose < 10) ira_dump_file = dump_file; @@ -4634,8 +4629,6 @@ do_reload (void) timevar_pop (TV_RELOAD); - timevar_push (TV_IRA); - if (ira_conflicts_p && ! ira_use_lra_p) { ira_free (ira_spilled_reg_stack_slots); @@ -4693,8 +4686,6 @@ do_reload (void) if (need_dce && optimize) run_fast_dce (); - - timevar_pop (TV_IRA); } /* Run the integrated register allocator. */ @@ -4721,33 +4712,6 @@ struct rtl_opt_pass pass_ira = 0, /* properties_provided */ 0, /* properties_destroyed */ 0, /* todo_flags_start */ - 0, /* todo_flags_finish */ - } -}; - -static unsigned int -rest_of_handle_reload (void) -{ - do_reload (); - return 0; -} - -struct rtl_opt_pass pass_reload = -{ - { - RTL_PASS, - "reload", /* name */ - OPTGROUP_NONE, /* optinfo_flags */ - NULL, /* gate */ - rest_of_handle_reload, /* execute */ - NULL, /* sub */ - NULL, /* next */ - 0, /* static_pass_number */ - TV_RELOAD, /* tv_id */ - 0, /* properties_required */ - 0, /* properties_provided */ - 0, /* properties_destroyed */ - 0, /* todo_flags_start */ - TODO_ggc_collect /* todo_flags_finish */ + 0 /* todo_flags_finish */ } }; |