diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-05-11 14:07:38 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-05-11 14:07:38 +0000 |
commit | 615091c17699ae8b96a281899f89f55cada85308 (patch) | |
tree | 0eeb74722c6f05b398c7d62aad2871734e913808 | |
parent | eba36973e2376268fbafb14dbdf9a813b228e650 (diff) | |
download | gcc-615091c17699ae8b96a281899f89f55cada85308.tar.gz |
2012-05-11 Richard Guenther <rguenther@suse.de>
* tree-pass.h (pass_rest_of_compilation,
pass_all_optimizations, pass_postreload, pass_all_early_optimizations):
Remove.
* passes.c (pass_all_optimizations, pass_postreload,
pass_all_early_optimizations): Make static.
(pass_rest_of_compilation): Likewise. Make it an RTL_PASS.
* tree-phinodes.c (init_phinodes, fini_phinodes): Remove.
* tree-ssa.c (init_tree_ssa): Do not call init_phinodes.
(delete_tree_ssa): Do not call fini_phinodes.
* tree-flow.h (init_phinodes, fini_phinodes): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187407 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 13 | ||||
-rw-r--r-- | gcc/passes.c | 11 | ||||
-rw-r--r-- | gcc/tree-flow.h | 2 | ||||
-rw-r--r-- | gcc/tree-pass.h | 4 | ||||
-rw-r--r-- | gcc/tree-phinodes.c | 28 | ||||
-rw-r--r-- | gcc/tree-ssa.c | 2 |
6 files changed, 19 insertions, 41 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c9f7f499b74..a71420c70d3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,16 @@ +2012-05-11 Richard Guenther <rguenther@suse.de> + + * tree-pass.h (pass_rest_of_compilation, + pass_all_optimizations, pass_postreload, pass_all_early_optimizations): + Remove. + * passes.c (pass_all_optimizations, pass_postreload, + pass_all_early_optimizations): Make static. + (pass_rest_of_compilation): Likewise. Make it an RTL_PASS. + * tree-phinodes.c (init_phinodes, fini_phinodes): Remove. + * tree-ssa.c (init_tree_ssa): Do not call init_phinodes. + (delete_tree_ssa): Do not call fini_phinodes. + * tree-flow.h (init_phinodes, fini_phinodes): Remove. + 2012-05-11 Manuel López-Ibáñez <manu@gcc.gnu.org> PR 53063 diff --git a/gcc/passes.c b/gcc/passes.c index c2addb19bd7..b6fe18e4501 100644 --- a/gcc/passes.c +++ b/gcc/passes.c @@ -334,7 +334,7 @@ gate_all_early_optimizations (void) && !seen_error ()); } -struct gimple_opt_pass pass_all_early_optimizations = +static struct gimple_opt_pass pass_all_early_optimizations = { { GIMPLE_PASS, @@ -364,7 +364,7 @@ gate_all_optimizations (void) && (!seen_error () || gimple_in_ssa_p (cfun))); } -struct gimple_opt_pass pass_all_optimizations = +static struct gimple_opt_pass pass_all_optimizations = { { GIMPLE_PASS, @@ -391,10 +391,10 @@ gate_rest_of_compilation (void) return !(rtl_dump_and_exit || flag_syntax_only || seen_error ()); } -struct gimple_opt_pass pass_rest_of_compilation = +static struct rtl_opt_pass pass_rest_of_compilation = { { - GIMPLE_PASS, + RTL_PASS, "*rest_of_compilation", /* name */ gate_rest_of_compilation, /* gate */ NULL, /* execute */ @@ -416,7 +416,7 @@ gate_postreload (void) return reload_completed; } -struct rtl_opt_pass pass_postreload = +static struct rtl_opt_pass pass_postreload = { { RTL_PASS, @@ -1377,6 +1377,7 @@ init_optimization_passes (void) p = &all_late_ipa_passes; NEXT_PASS (pass_ipa_pta); *p = NULL; + /* These passes are run after IPA passes on every function that is being output to the assembler file. */ p = &all_passes; diff --git a/gcc/tree-flow.h b/gcc/tree-flow.h index 315d9558d14..bda4ba9ce77 100644 --- a/gcc/tree-flow.h +++ b/gcc/tree-flow.h @@ -514,8 +514,6 @@ extern void add_phi_arg (gimple, tree, edge, source_location); extern void remove_phi_args (edge); extern void remove_phi_node (gimple_stmt_iterator *, bool); extern void remove_phi_nodes (basic_block); -extern void init_phinodes (void); -extern void fini_phinodes (void); extern void release_phi_node (gimple); #ifdef GATHER_STATISTICS extern void phinodes_print_statistics (void); diff --git a/gcc/tree-pass.h b/gcc/tree-pass.h index 1c902bc1648..aa2959c4def 100644 --- a/gcc/tree-pass.h +++ b/gcc/tree-pass.h @@ -430,7 +430,6 @@ extern struct gimple_opt_pass pass_tree_ifcombine; extern struct gimple_opt_pass pass_dse; extern struct gimple_opt_pass pass_nrv; extern struct gimple_opt_pass pass_rename_ssa_copies; -extern struct gimple_opt_pass pass_rest_of_compilation; extern struct gimple_opt_pass pass_sink_code; extern struct gimple_opt_pass pass_fre; extern struct gimple_opt_pass pass_check_data_deps; @@ -477,7 +476,6 @@ extern struct simple_ipa_opt_pass pass_ipa_tm; extern struct ipa_opt_pass_d pass_ipa_profile; extern struct ipa_opt_pass_d pass_ipa_cdtor_merge; -extern struct gimple_opt_pass pass_all_optimizations; extern struct gimple_opt_pass pass_cleanup_cfg_post_optimizing; extern struct gimple_opt_pass pass_init_datastructures; extern struct gimple_opt_pass pass_fixup_cfg; @@ -535,7 +533,6 @@ extern struct rtl_opt_pass pass_sms; extern struct rtl_opt_pass pass_sched; extern struct rtl_opt_pass pass_ira; extern struct rtl_opt_pass pass_reload; -extern struct rtl_opt_pass pass_postreload; extern struct rtl_opt_pass pass_clean_state; extern struct rtl_opt_pass pass_branch_prob; extern struct rtl_opt_pass pass_value_profile_transformations; @@ -576,7 +573,6 @@ extern struct rtl_opt_pass pass_rtl_seqabstr; extern struct gimple_opt_pass pass_release_ssa_names; extern struct gimple_opt_pass pass_early_inline; extern struct gimple_opt_pass pass_inline_parameters; -extern struct gimple_opt_pass pass_all_early_optimizations; extern struct gimple_opt_pass pass_update_address_taken; extern struct gimple_opt_pass pass_convert_switch; diff --git a/gcc/tree-phinodes.c b/gcc/tree-phinodes.c index bac9b52abcd..bd0bde399e1 100644 --- a/gcc/tree-phinodes.c +++ b/gcc/tree-phinodes.c @@ -44,10 +44,6 @@ along with GCC; see the file COPYING3. If not see garbage collector. Similar results have been seen on a wider variety of tests (such as the compiler itself). - Right now we maintain our free list on a per-function basis. It may - or may not make sense to maintain the free list for the duration of - a compilation unit. - We could also use a zone allocator for these objects since they have a very well defined lifetime. If someone wants to experiment with that this is the place to try it. @@ -87,30 +83,6 @@ unsigned int phi_nodes_reused; unsigned int phi_nodes_created; #endif -/* Initialize management of PHIs. */ - -void -init_phinodes (void) -{ - int i; - - for (i = 0; i < NUM_BUCKETS - 2; i++) - free_phinodes[i] = NULL; - free_phinode_count = 0; -} - -/* Finalize management of PHIs. */ - -void -fini_phinodes (void) -{ - int i; - - for (i = 0; i < NUM_BUCKETS - 2; i++) - free_phinodes[i] = NULL; - free_phinode_count = 0; -} - /* Dump some simple statistics regarding the re-use of PHI nodes. */ #ifdef GATHER_STATISTICS diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c index 32a01fb1eef..2655d26e5e2 100644 --- a/gcc/tree-ssa.c +++ b/gcc/tree-ssa.c @@ -1117,7 +1117,6 @@ init_tree_ssa (struct function *fn) uid_ssaname_map_eq, NULL); pt_solution_reset (&fn->gimple_df->escaped); init_ssanames (fn, 0); - init_phinodes (); } /* Do the actions required to initialize internal data structures used @@ -1173,7 +1172,6 @@ delete_tree_ssa (void) cfun->gimple_df->referenced_vars = NULL; fini_ssanames (); - fini_phinodes (); /* We no longer maintain the SSA operand cache at this point. */ if (ssa_operands_active ()) |