* 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
+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
&& !seen_error ());
}
-struct gimple_opt_pass pass_all_early_optimizations =
+static struct gimple_opt_pass pass_all_early_optimizations =
{
{
GIMPLE_PASS,
&& (!seen_error () || gimple_in_ssa_p (cfun)));
}
-struct gimple_opt_pass pass_all_optimizations =
+static struct gimple_opt_pass pass_all_optimizations =
{
{
GIMPLE_PASS,
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 */
return reload_completed;
}
-struct rtl_opt_pass pass_postreload =
+static struct rtl_opt_pass pass_postreload =
{
{
RTL_PASS,
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;
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);
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;
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;
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;
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;
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.
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
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
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 ())