mirror of git://gcc.gnu.org/git/gcc.git
timevar.def (TV_IPA_OPT, [...]): New.
* timevar.def (TV_IPA_OPT, TV_EARLY_LOCAL, TV_OPTIMIZE, TV_POSTRELOAD, TV_REMOVE_UNUSED, TV_ADDRESS_TAKEN, TV_TODO, TV_VERIFY_LOOP_CLOSED, TV_VERIFY_RTL_SHARING, TV_REBUILD_FREQUENCIES, TV_REPAIR_LOOPS): New. * tree-into-ssa.c (rewrite_into_ssa): Don't push/pop timevar here ... (pass_build_ssa): ... but here. * cgraphbuild.c (pass_rebuild_cgraph): Use timevar. * tree-ssa-loop-manip.c (verify_loop_closed_ssa): Use timevar. * tree-emutls.c (pass_ipa_lower_emutls): Ditto. * df-core.c (pass_df_initialize_opt, pass_df_initialize_no_opt): Ditto. * predict.c (rebuild_frequencies): Ditto. * tree-vectorizer.c (pass_ipa_increase_alignment): Ditto. * emit-rtl.c (verify_rtl_sharing): Ditto. * tree-cfgcleanup.c (repair_loop_structures): Ditto. * tree-ssa-live.c (remove_unused_locals): Ditto. * cfglayout.c (pass_into_cfg_layout, pass_outof_cfg_layout): Ditto. * tree-ssa.c (pass_early_warn_uninitialized, execute_update_addresses_taken, pass_update_address_taken): Ditto. * tree-optimize.c (pass_all_optimizations, pass_early_local_passes, pass_cleanup_cfg_post_optimizing, tree_rest_of_compilation): Ditto. * passes.c (pass_postreload, execute_todo): Ditto. * tree-ssanames.c (pass_release_ssa_names): Ditto. From-SVN: r166869
This commit is contained in:
parent
b37421c62a
commit
a222c01a3c
|
|
@ -1,3 +1,29 @@
|
||||||
|
2010-11-17 Michael Matz <matz@suse.de>
|
||||||
|
|
||||||
|
* timevar.def (TV_IPA_OPT, TV_EARLY_LOCAL, TV_OPTIMIZE,
|
||||||
|
TV_POSTRELOAD, TV_REMOVE_UNUSED, TV_ADDRESS_TAKEN, TV_TODO,
|
||||||
|
TV_VERIFY_LOOP_CLOSED, TV_VERIFY_RTL_SHARING,
|
||||||
|
TV_REBUILD_FREQUENCIES, TV_REPAIR_LOOPS): New.
|
||||||
|
* tree-into-ssa.c (rewrite_into_ssa): Don't push/pop timevar here ...
|
||||||
|
(pass_build_ssa): ... but here.
|
||||||
|
* cgraphbuild.c (pass_rebuild_cgraph): Use timevar.
|
||||||
|
* tree-ssa-loop-manip.c (verify_loop_closed_ssa): Use timevar.
|
||||||
|
* tree-emutls.c (pass_ipa_lower_emutls): Ditto.
|
||||||
|
* df-core.c (pass_df_initialize_opt,
|
||||||
|
pass_df_initialize_no_opt): Ditto.
|
||||||
|
* predict.c (rebuild_frequencies): Ditto.
|
||||||
|
* tree-vectorizer.c (pass_ipa_increase_alignment): Ditto.
|
||||||
|
* emit-rtl.c (verify_rtl_sharing): Ditto.
|
||||||
|
* tree-cfgcleanup.c (repair_loop_structures): Ditto.
|
||||||
|
* tree-ssa-live.c (remove_unused_locals): Ditto.
|
||||||
|
* cfglayout.c (pass_into_cfg_layout, pass_outof_cfg_layout): Ditto.
|
||||||
|
* tree-ssa.c (pass_early_warn_uninitialized,
|
||||||
|
execute_update_addresses_taken, pass_update_address_taken): Ditto.
|
||||||
|
* tree-optimize.c (pass_all_optimizations, pass_early_local_passes,
|
||||||
|
pass_cleanup_cfg_post_optimizing, tree_rest_of_compilation): Ditto.
|
||||||
|
* passes.c (pass_postreload, execute_todo): Ditto.
|
||||||
|
* tree-ssanames.c (pass_release_ssa_names): Ditto.
|
||||||
|
|
||||||
2010-11-17 Joseph Myers <joseph@codesourcery.com>
|
2010-11-17 Joseph Myers <joseph@codesourcery.com>
|
||||||
|
|
||||||
* doc/invoke.texi (-dy): Remove.
|
* doc/invoke.texi (-dy): Remove.
|
||||||
|
|
|
||||||
|
|
@ -374,7 +374,7 @@ struct rtl_opt_pass pass_into_cfg_layout_mode =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_CFG, /* tv_id */
|
||||||
0, /* properties_required */
|
0, /* properties_required */
|
||||||
PROP_cfglayout, /* properties_provided */
|
PROP_cfglayout, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
@ -393,7 +393,7 @@ struct rtl_opt_pass pass_outof_cfg_layout_mode =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_CFG, /* tv_id */
|
||||||
0, /* properties_required */
|
0, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
PROP_cfglayout, /* properties_destroyed */
|
PROP_cfglayout, /* properties_destroyed */
|
||||||
|
|
|
||||||
|
|
@ -521,7 +521,7 @@ struct gimple_opt_pass pass_rebuild_cgraph_edges =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_CGRAPH, /* tv_id */
|
||||||
PROP_cfg, /* properties_required */
|
PROP_cfg, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
|
||||||
|
|
@ -758,7 +758,7 @@ struct rtl_opt_pass pass_df_initialize_opt =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_DF_SCAN, /* tv_id */
|
||||||
0, /* properties_required */
|
0, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
@ -785,7 +785,7 @@ struct rtl_opt_pass pass_df_initialize_no_opt =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_DF_SCAN, /* tv_id */
|
||||||
0, /* properties_required */
|
0, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
|
||||||
|
|
@ -2526,6 +2526,8 @@ verify_rtl_sharing (void)
|
||||||
{
|
{
|
||||||
rtx p;
|
rtx p;
|
||||||
|
|
||||||
|
timevar_push (TV_VERIFY_RTL_SHARING);
|
||||||
|
|
||||||
for (p = get_insns (); p; p = NEXT_INSN (p))
|
for (p = get_insns (); p; p = NEXT_INSN (p))
|
||||||
if (INSN_P (p))
|
if (INSN_P (p))
|
||||||
{
|
{
|
||||||
|
|
@ -2552,6 +2554,8 @@ verify_rtl_sharing (void)
|
||||||
verify_rtx_sharing (PATTERN (p), p);
|
verify_rtx_sharing (PATTERN (p), p);
|
||||||
verify_rtx_sharing (REG_NOTES (p), p);
|
verify_rtx_sharing (REG_NOTES (p), p);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
timevar_pop (TV_VERIFY_RTL_SHARING);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Go through all the RTL insn bodies and copy any invalid shared structure.
|
/* Go through all the RTL insn bodies and copy any invalid shared structure.
|
||||||
|
|
|
||||||
|
|
@ -324,7 +324,7 @@ struct rtl_opt_pass pass_postreload =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_POSTRELOAD, /* tv_id */
|
||||||
PROP_rtl, /* properties_required */
|
PROP_rtl, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
@ -1269,6 +1269,8 @@ execute_todo (unsigned int flags)
|
||||||
gcc_assert (flags & TODO_update_ssa_any);
|
gcc_assert (flags & TODO_update_ssa_any);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
timevar_push (TV_TODO);
|
||||||
|
|
||||||
/* Inform the pass whether it is the first time it is run. */
|
/* Inform the pass whether it is the first time it is run. */
|
||||||
first_pass_instance = (flags & TODO_mark_first_instance) != 0;
|
first_pass_instance = (flags & TODO_mark_first_instance) != 0;
|
||||||
|
|
||||||
|
|
@ -1302,6 +1304,8 @@ execute_todo (unsigned int flags)
|
||||||
df problems. */
|
df problems. */
|
||||||
if (flags & TODO_df_finish)
|
if (flags & TODO_df_finish)
|
||||||
df_finish_pass ((flags & TODO_df_verify) != 0);
|
df_finish_pass ((flags & TODO_df_verify) != 0);
|
||||||
|
|
||||||
|
timevar_pop (TV_TODO);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Verify invariants that should hold between passes. This is a place
|
/* Verify invariants that should hold between passes. This is a place
|
||||||
|
|
|
||||||
|
|
@ -2329,6 +2329,7 @@ struct gimple_opt_pass pass_strip_predict_hints =
|
||||||
void
|
void
|
||||||
rebuild_frequencies (void)
|
rebuild_frequencies (void)
|
||||||
{
|
{
|
||||||
|
timevar_push (TV_REBUILD_FREQUENCIES);
|
||||||
if (profile_status == PROFILE_GUESSED)
|
if (profile_status == PROFILE_GUESSED)
|
||||||
{
|
{
|
||||||
loop_optimizer_init (0);
|
loop_optimizer_init (0);
|
||||||
|
|
@ -2343,4 +2344,5 @@ rebuild_frequencies (void)
|
||||||
counts_to_freqs ();
|
counts_to_freqs ();
|
||||||
else
|
else
|
||||||
gcc_unreachable ();
|
gcc_unreachable ();
|
||||||
|
timevar_pop (TV_REBUILD_FREQUENCIES);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1019,7 +1019,7 @@ struct rtl_opt_pass pass_reginfo_init =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_NONE, /* tv_id */
|
||||||
0, /* properties_required */
|
0, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
|
||||||
|
|
@ -53,6 +53,7 @@ DEFTIMEVAR (TV_CGRAPHOPT , "callgraph optimization")
|
||||||
DEFTIMEVAR (TV_VARPOOL , "varpool construction")
|
DEFTIMEVAR (TV_VARPOOL , "varpool construction")
|
||||||
DEFTIMEVAR (TV_IPA_CONSTANT_PROP , "ipa cp")
|
DEFTIMEVAR (TV_IPA_CONSTANT_PROP , "ipa cp")
|
||||||
DEFTIMEVAR (TV_IPA_FNSPLIT , "ipa function splitting")
|
DEFTIMEVAR (TV_IPA_FNSPLIT , "ipa function splitting")
|
||||||
|
DEFTIMEVAR (TV_IPA_OPT , "ipa various optimizations")
|
||||||
DEFTIMEVAR (TV_IPA_LTO_GIMPLE_IN , "ipa lto gimple in")
|
DEFTIMEVAR (TV_IPA_LTO_GIMPLE_IN , "ipa lto gimple in")
|
||||||
DEFTIMEVAR (TV_IPA_LTO_GIMPLE_OUT , "ipa lto gimple out")
|
DEFTIMEVAR (TV_IPA_LTO_GIMPLE_OUT , "ipa lto gimple out")
|
||||||
DEFTIMEVAR (TV_IPA_LTO_DECL_IN , "ipa lto decl in")
|
DEFTIMEVAR (TV_IPA_LTO_DECL_IN , "ipa lto decl in")
|
||||||
|
|
@ -232,9 +233,19 @@ DEFTIMEVAR (TV_VAR_TRACKING , "variable tracking")
|
||||||
DEFTIMEVAR (TV_VAR_TRACKING_DATAFLOW , "var-tracking dataflow")
|
DEFTIMEVAR (TV_VAR_TRACKING_DATAFLOW , "var-tracking dataflow")
|
||||||
DEFTIMEVAR (TV_VAR_TRACKING_EMIT , "var-tracking emit")
|
DEFTIMEVAR (TV_VAR_TRACKING_EMIT , "var-tracking emit")
|
||||||
DEFTIMEVAR (TV_TREE_IFCOMBINE , "tree if-combine")
|
DEFTIMEVAR (TV_TREE_IFCOMBINE , "tree if-combine")
|
||||||
DEFTIMEVAR (TV_TREE_UNINIT , "uninit var anaysis")
|
DEFTIMEVAR (TV_TREE_UNINIT , "uninit var analysis")
|
||||||
DEFTIMEVAR (TV_PLUGIN_INIT , "plugin initialization")
|
DEFTIMEVAR (TV_PLUGIN_INIT , "plugin initialization")
|
||||||
DEFTIMEVAR (TV_PLUGIN_RUN , "plugin execution")
|
DEFTIMEVAR (TV_PLUGIN_RUN , "plugin execution")
|
||||||
|
|
||||||
/* Everything else in rest_of_compilation not included above. */
|
/* Everything else in rest_of_compilation not included above. */
|
||||||
|
DEFTIMEVAR (TV_EARLY_LOCAL , "early local passes")
|
||||||
|
DEFTIMEVAR (TV_OPTIMIZE , "unaccounted optimizations")
|
||||||
DEFTIMEVAR (TV_REST_OF_COMPILATION , "rest of compilation")
|
DEFTIMEVAR (TV_REST_OF_COMPILATION , "rest of compilation")
|
||||||
|
DEFTIMEVAR (TV_POSTRELOAD , "unaccounted post reload")
|
||||||
|
DEFTIMEVAR (TV_REMOVE_UNUSED , "remove unused locals")
|
||||||
|
DEFTIMEVAR (TV_ADDRESS_TAKEN , "address taken")
|
||||||
|
DEFTIMEVAR (TV_TODO , "unaccounted todo")
|
||||||
|
DEFTIMEVAR (TV_VERIFY_LOOP_CLOSED , "verify loop closed")
|
||||||
|
DEFTIMEVAR (TV_VERIFY_RTL_SHARING , "verify RTL sharing")
|
||||||
|
DEFTIMEVAR (TV_REBUILD_FREQUENCIES , "rebuild frequencies")
|
||||||
|
DEFTIMEVAR (TV_REPAIR_LOOPS , "repair loop structures")
|
||||||
|
|
|
||||||
|
|
@ -777,7 +777,10 @@ cleanup_tree_cfg_noloop (void)
|
||||||
static void
|
static void
|
||||||
repair_loop_structures (void)
|
repair_loop_structures (void)
|
||||||
{
|
{
|
||||||
bitmap changed_bbs = BITMAP_ALLOC (NULL);
|
bitmap changed_bbs;
|
||||||
|
|
||||||
|
timevar_push (TV_REPAIR_LOOPS);
|
||||||
|
changed_bbs = BITMAP_ALLOC (NULL);
|
||||||
fix_loop_structure (changed_bbs);
|
fix_loop_structure (changed_bbs);
|
||||||
|
|
||||||
/* This usually does nothing. But sometimes parts of cfg that originally
|
/* This usually does nothing. But sometimes parts of cfg that originally
|
||||||
|
|
@ -794,6 +797,7 @@ repair_loop_structures (void)
|
||||||
scev_reset ();
|
scev_reset ();
|
||||||
|
|
||||||
loops_state_clear (LOOPS_NEED_FIXUP);
|
loops_state_clear (LOOPS_NEED_FIXUP);
|
||||||
|
timevar_pop (TV_REPAIR_LOOPS);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Cleanup cfg and repair loop structures. */
|
/* Cleanup cfg and repair loop structures. */
|
||||||
|
|
|
||||||
|
|
@ -792,7 +792,7 @@ struct simple_ipa_opt_pass pass_ipa_lower_emutls =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_IPA_OPT, /* tv_id */
|
||||||
PROP_cfg | PROP_ssa, /* properties_required */
|
PROP_cfg | PROP_ssa, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
|
||||||
|
|
@ -2339,8 +2339,6 @@ rewrite_into_ssa (void)
|
||||||
bitmap_head *dfs;
|
bitmap_head *dfs;
|
||||||
basic_block bb;
|
basic_block bb;
|
||||||
|
|
||||||
timevar_push (TV_TREE_SSA_OTHER);
|
|
||||||
|
|
||||||
/* Initialize operand data structures. */
|
/* Initialize operand data structures. */
|
||||||
init_ssa_operands ();
|
init_ssa_operands ();
|
||||||
|
|
||||||
|
|
@ -2380,7 +2378,6 @@ rewrite_into_ssa (void)
|
||||||
|
|
||||||
fini_ssa_renamer ();
|
fini_ssa_renamer ();
|
||||||
|
|
||||||
timevar_pop (TV_TREE_SSA_OTHER);
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -2395,7 +2392,7 @@ struct gimple_opt_pass pass_build_ssa =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_TREE_SSA_OTHER, /* tv_id */
|
||||||
PROP_cfg | PROP_referenced_vars, /* properties_required */
|
PROP_cfg | PROP_referenced_vars, /* properties_required */
|
||||||
PROP_ssa, /* properties_provided */
|
PROP_ssa, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
|
||||||
|
|
@ -69,7 +69,7 @@ struct gimple_opt_pass pass_all_optimizations =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_OPTIMIZE, /* tv_id */
|
||||||
0, /* properties_required */
|
0, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
@ -111,7 +111,7 @@ struct simple_ipa_opt_pass pass_early_local_passes =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_EARLY_LOCAL, /* tv_id */
|
||||||
0, /* properties_required */
|
0, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
@ -203,7 +203,7 @@ struct gimple_opt_pass pass_cleanup_cfg_post_optimizing =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_TREE_CLEANUP_CFG, /* tv_id */
|
||||||
PROP_cfg, /* properties_required */
|
PROP_cfg, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
@ -389,7 +389,7 @@ tree_rest_of_compilation (tree fndecl)
|
||||||
{
|
{
|
||||||
location_t saved_loc;
|
location_t saved_loc;
|
||||||
|
|
||||||
timevar_push (TV_EXPAND);
|
timevar_push (TV_REST_OF_COMPILATION);
|
||||||
|
|
||||||
gcc_assert (cgraph_global_info_ready);
|
gcc_assert (cgraph_global_info_ready);
|
||||||
|
|
||||||
|
|
@ -471,5 +471,5 @@ tree_rest_of_compilation (tree fndecl)
|
||||||
input_location = saved_loc;
|
input_location = saved_loc;
|
||||||
|
|
||||||
ggc_collect ();
|
ggc_collect ();
|
||||||
timevar_pop (TV_EXPAND);
|
timevar_pop (TV_REST_OF_COMPILATION);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -695,6 +695,8 @@ remove_unused_locals (void)
|
||||||
if (!optimize)
|
if (!optimize)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
timevar_push (TV_REMOVE_UNUSED);
|
||||||
|
|
||||||
mark_scope_block_unused (DECL_INITIAL (current_function_decl));
|
mark_scope_block_unused (DECL_INITIAL (current_function_decl));
|
||||||
|
|
||||||
/* Assume all locals are unused. */
|
/* Assume all locals are unused. */
|
||||||
|
|
@ -827,6 +829,8 @@ remove_unused_locals (void)
|
||||||
fprintf (dump_file, "Scope blocks after cleanups:\n");
|
fprintf (dump_file, "Scope blocks after cleanups:\n");
|
||||||
dump_scope_blocks (dump_file, dump_flags);
|
dump_scope_blocks (dump_file, dump_flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
timevar_pop (TV_REMOVE_UNUSED);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -455,6 +455,8 @@ verify_loop_closed_ssa (bool verify_ssa_p)
|
||||||
if (verify_ssa_p)
|
if (verify_ssa_p)
|
||||||
verify_ssa (false);
|
verify_ssa (false);
|
||||||
|
|
||||||
|
timevar_push (TV_VERIFY_LOOP_CLOSED);
|
||||||
|
|
||||||
FOR_EACH_BB (bb)
|
FOR_EACH_BB (bb)
|
||||||
{
|
{
|
||||||
for (bsi = gsi_start_phis (bb); !gsi_end_p (bsi); gsi_next (&bsi))
|
for (bsi = gsi_start_phis (bb); !gsi_end_p (bsi); gsi_next (&bsi))
|
||||||
|
|
@ -468,6 +470,8 @@ verify_loop_closed_ssa (bool verify_ssa_p)
|
||||||
for (bsi = gsi_start_bb (bb); !gsi_end_p (bsi); gsi_next (&bsi))
|
for (bsi = gsi_start_bb (bb); !gsi_end_p (bsi); gsi_next (&bsi))
|
||||||
check_loop_closed_ssa_stmt (bb, gsi_stmt (bsi));
|
check_loop_closed_ssa_stmt (bb, gsi_stmt (bsi));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
timevar_pop (TV_VERIFY_LOOP_CLOSED);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Split loop exit edge EXIT. The things are a bit complicated by a need to
|
/* Split loop exit edge EXIT. The things are a bit complicated by a need to
|
||||||
|
|
|
||||||
|
|
@ -1816,7 +1816,7 @@ struct gimple_opt_pass pass_early_warn_uninitialized =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_TREE_UNINIT, /* tv_id */
|
||||||
PROP_ssa, /* properties_required */
|
PROP_ssa, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
@ -1958,6 +1958,8 @@ execute_update_addresses_taken (void)
|
||||||
tree var;
|
tree var;
|
||||||
unsigned i;
|
unsigned i;
|
||||||
|
|
||||||
|
timevar_push (TV_ADDRESS_TAKEN);
|
||||||
|
|
||||||
/* Collect into ADDRESSES_TAKEN all variables whose address is taken within
|
/* Collect into ADDRESSES_TAKEN all variables whose address is taken within
|
||||||
the function body. */
|
the function body. */
|
||||||
FOR_EACH_BB (bb)
|
FOR_EACH_BB (bb)
|
||||||
|
|
@ -2173,6 +2175,7 @@ execute_update_addresses_taken (void)
|
||||||
|
|
||||||
BITMAP_FREE (not_reg_needs);
|
BITMAP_FREE (not_reg_needs);
|
||||||
BITMAP_FREE (addresses_taken);
|
BITMAP_FREE (addresses_taken);
|
||||||
|
timevar_pop (TV_ADDRESS_TAKEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct gimple_opt_pass pass_update_address_taken =
|
struct gimple_opt_pass pass_update_address_taken =
|
||||||
|
|
@ -2185,7 +2188,7 @@ struct gimple_opt_pass pass_update_address_taken =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_ADDRESS_TAKEN, /* tv_id */
|
||||||
PROP_ssa, /* properties_required */
|
PROP_ssa, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
|
||||||
|
|
@ -373,7 +373,7 @@ struct gimple_opt_pass pass_release_ssa_names =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_TREE_SSA_OTHER, /* tv_id */
|
||||||
PROP_ssa, /* properties_required */
|
PROP_ssa, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
|
||||||
|
|
@ -383,7 +383,7 @@ struct simple_ipa_opt_pass pass_ipa_increase_alignment =
|
||||||
NULL, /* sub */
|
NULL, /* sub */
|
||||||
NULL, /* next */
|
NULL, /* next */
|
||||||
0, /* static_pass_number */
|
0, /* static_pass_number */
|
||||||
TV_NONE, /* tv_id */
|
TV_IPA_OPT, /* tv_id */
|
||||||
0, /* properties_required */
|
0, /* properties_required */
|
||||||
0, /* properties_provided */
|
0, /* properties_provided */
|
||||||
0, /* properties_destroyed */
|
0, /* properties_destroyed */
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue