summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2012-05-11 14:07:38 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2012-05-11 14:07:38 +0000
commit615091c17699ae8b96a281899f89f55cada85308 (patch)
tree0eeb74722c6f05b398c7d62aad2871734e913808
parenteba36973e2376268fbafb14dbdf9a813b228e650 (diff)
downloadgcc-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/ChangeLog13
-rw-r--r--gcc/passes.c11
-rw-r--r--gcc/tree-flow.h2
-rw-r--r--gcc/tree-pass.h4
-rw-r--r--gcc/tree-phinodes.c28
-rw-r--r--gcc/tree-ssa.c2
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 ())