regrename.c (pass_regrename, [...]): Add RTL sharing verifier.
* regrename.c (pass_regrename, pass_cprop_hardreg): Add RTL sharing verifier. * fwprop.c (pass_rtl_fwprop, pass_rtl_fwprop_add): Likewise. * see.c (pass_see): Likewise. * tracer.c (pass_tracer): Likewise. * postreload-gcse.c (pass_gcse2): Likewise. * postreload.c (pass_postreload_cse): Likewise. * mode-switching.c (pass_mode_switching): Likewise. * modulo-sched.c (pass_sms): Likewise. * cse.c (cse_insn): Likewise. * web.c (pass_web): Likweise. * combine-stack-adj.c (pass_stack_adjustments): Likewise. * dce.c (pass_ud_rtl_dce, pass_fast_rtl_dce): Likewise. * loop-init.c (pass_rtl_loop_init): Likewise. (pass_rtl_loop_done, pass_rtl_move_loop_, pass_rtl_unswitch, pass_rtl_unroll_and, pass_rtl_doloop): Likewise. * global.c (pass_global_alloc): Likewise. * ifcvt.c (pass_rtl_ifcvt, pass_if_after_combine, pass_if_after_reload): Likewise. * reload.c (pass_peephole2, pass_split_for_shoren_branches): Likewise. * dse.c (pass_rtl_dse1, pass_rtl_dse2): Likewise. * regmove.c (pass_regmove): Likewise. * function.c (pass_thread_prologugues_epilogues): Likewise. * gcse.c (pass_gcse): Likewise. * rtl-factoring.c (pass_rtl_seqabstr): Likewise. * lower-subreg.c (pass_lower_subreg2): Likewise. * bt-load.c (pass_branch_target_load): Likewise. * emit-rtl.c (pass_unshare_all_rtl): Likewise. * cfgcleanup.c (pass_jump, pass_jump2): Likewise. * combine.c (pass_combine): Likewise. * bb-reorder.c (pass_duplicate_comp, pass_reorder_blocks): Likewise. (pass_partition_blocks): Likewise. * var-tracking.c (pass_variable_track): Likewise. * reg-stack.c (pass_stack_regs_run): Likewise. * sched-rgn.c (pass_sched, pass_sched2): Likewise. * passes.c (pass_postreload): Likewise. (execute_function_todo): Add TODO_verify_rtl_sharing handling code. * tree-pass.h (TODO_verify_rtl_sharing): New. (TODO_update_ssa, TODO_update_ssa_no_phi, TODO_update_ssa_full_phi, TODO_update_ssa_only_virtuals, TODO_remove_unused_locals, TODO_set_props, TODO_df_finish, TODO_df_verify, TODO_mark_first_instance, TODO_rebuild_alias): Renumber. From-SVN: r128126
This commit is contained in:
parent
03ba2e1122
commit
a36b8a1ee8
33 changed files with 110 additions and 62 deletions
|
@ -1,3 +1,48 @@
|
|||
2007-09-05 Jan Hubicka <jh@suse.cz>
|
||||
|
||||
* regrename.c (pass_regrename, pass_cprop_hardreg): Add RTL sharing
|
||||
verifier.
|
||||
* fwprop.c (pass_rtl_fwprop, pass_rtl_fwprop_add): Likewise.
|
||||
* see.c (pass_see): Likewise.
|
||||
* tracer.c (pass_tracer): Likewise.
|
||||
* postreload-gcse.c (pass_gcse2): Likewise.
|
||||
* postreload.c (pass_postreload_cse): Likewise.
|
||||
* mode-switching.c (pass_mode_switching): Likewise.
|
||||
* modulo-sched.c (pass_sms): Likewise.
|
||||
* cse.c (cse_insn): Likewise.
|
||||
* web.c (pass_web): Likweise.
|
||||
* combine-stack-adj.c (pass_stack_adjustments): Likewise.
|
||||
* dce.c (pass_ud_rtl_dce, pass_fast_rtl_dce): Likewise.
|
||||
* loop-init.c (pass_rtl_loop_init): Likewise.
|
||||
(pass_rtl_loop_done, pass_rtl_move_loop_, pass_rtl_unswitch,
|
||||
pass_rtl_unroll_and, pass_rtl_doloop): Likewise.
|
||||
* global.c (pass_global_alloc): Likewise.
|
||||
* ifcvt.c (pass_rtl_ifcvt, pass_if_after_combine,
|
||||
pass_if_after_reload): Likewise.
|
||||
* reload.c (pass_peephole2, pass_split_for_shoren_branches): Likewise.
|
||||
* dse.c (pass_rtl_dse1, pass_rtl_dse2): Likewise.
|
||||
* regmove.c (pass_regmove): Likewise.
|
||||
* function.c (pass_thread_prologugues_epilogues): Likewise.
|
||||
* gcse.c (pass_gcse): Likewise.
|
||||
* rtl-factoring.c (pass_rtl_seqabstr): Likewise.
|
||||
* lower-subreg.c (pass_lower_subreg2): Likewise.
|
||||
* bt-load.c (pass_branch_target_load): Likewise.
|
||||
* emit-rtl.c (pass_unshare_all_rtl): Likewise.
|
||||
* cfgcleanup.c (pass_jump, pass_jump2): Likewise.
|
||||
* combine.c (pass_combine): Likewise.
|
||||
* bb-reorder.c (pass_duplicate_comp, pass_reorder_blocks): Likewise.
|
||||
(pass_partition_blocks): Likewise.
|
||||
* var-tracking.c (pass_variable_track): Likewise.
|
||||
* reg-stack.c (pass_stack_regs_run): Likewise.
|
||||
* sched-rgn.c (pass_sched, pass_sched2): Likewise.
|
||||
* passes.c (pass_postreload): Likewise.
|
||||
(execute_function_todo): Add TODO_verify_rtl_sharing handling code.
|
||||
* tree-pass.h (TODO_verify_rtl_sharing): New.
|
||||
(TODO_update_ssa, TODO_update_ssa_no_phi, TODO_update_ssa_full_phi,
|
||||
TODO_update_ssa_only_virtuals, TODO_remove_unused_locals,
|
||||
TODO_set_props, TODO_df_finish, TODO_df_verify,
|
||||
TODO_mark_first_instance, TODO_rebuild_alias): Renumber.
|
||||
|
||||
2007-09-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||
|
||||
* fold-const.c (all_ones_mask_p, sign_bit_p, simple_operand_p,
|
||||
|
|
|
@ -2084,7 +2084,7 @@ struct tree_opt_pass pass_duplicate_computed_gotos =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing,/* todo_flags_finish */
|
||||
0 /* letter */
|
||||
};
|
||||
|
||||
|
@ -2234,7 +2234,7 @@ struct tree_opt_pass pass_reorder_blocks =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing,/* todo_flags_finish */
|
||||
'B' /* letter */
|
||||
};
|
||||
|
||||
|
@ -2272,7 +2272,7 @@ struct tree_opt_pass pass_partition_blocks =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing,/* todo_flags_finish */
|
||||
0 /* letter */
|
||||
};
|
||||
|
||||
|
|
|
@ -1519,6 +1519,7 @@ struct tree_opt_pass pass_branch_target_load_optimize1 =
|
|||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func |
|
||||
TODO_verify_rtl_sharing |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
'd' /* letter */
|
||||
};
|
||||
|
|
|
@ -2281,7 +2281,6 @@ struct tree_opt_pass pass_jump =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
TODO_ggc_collect, /* todo_flags_start */
|
||||
TODO_dump_func |
|
||||
TODO_verify_flow, /* todo_flags_finish */
|
||||
'i' /* letter */
|
||||
};
|
||||
|
@ -2312,7 +2311,7 @@ struct tree_opt_pass pass_jump2 =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
TODO_ggc_collect, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing,/* todo_flags_finish */
|
||||
'j' /* letter */
|
||||
};
|
||||
|
||||
|
|
|
@ -485,7 +485,7 @@ struct tree_opt_pass pass_stack_adjustments =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
0 /* letter */
|
||||
|
|
|
@ -13001,7 +13001,7 @@ struct tree_opt_pass pass_combine =
|
|||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func |
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
'c' /* letter */
|
||||
};
|
||||
|
|
10
gcc/cse.c
10
gcc/cse.c
|
@ -4786,14 +4786,14 @@ cse_insn (rtx insn, rtx libcall_insn)
|
|||
src_related_cost, src_related_regcost) <= 0
|
||||
&& preferable (src_eqv_cost, src_eqv_regcost,
|
||||
src_elt_cost, src_elt_regcost) <= 0)
|
||||
trial = copy_rtx (src_eqv_here), src_eqv_cost = MAX_COST;
|
||||
trial = src_eqv_here, src_eqv_cost = MAX_COST;
|
||||
else if (src_related
|
||||
&& preferable (src_related_cost, src_related_regcost,
|
||||
src_elt_cost, src_elt_regcost) <= 0)
|
||||
trial = copy_rtx (src_related), src_related_cost = MAX_COST;
|
||||
trial = src_related, src_related_cost = MAX_COST;
|
||||
else
|
||||
{
|
||||
trial = copy_rtx (elt->exp);
|
||||
trial = elt->exp;
|
||||
elt = elt->next_same_value;
|
||||
src_elt_cost = MAX_COST;
|
||||
}
|
||||
|
@ -7024,7 +7024,7 @@ struct tree_opt_pass pass_cse =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func |
|
||||
TODO_ggc_collect |
|
||||
TODO_verify_flow, /* todo_flags_finish */
|
||||
|
@ -7082,7 +7082,7 @@ struct tree_opt_pass pass_cse2 =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func |
|
||||
TODO_ggc_collect |
|
||||
TODO_verify_flow, /* todo_flags_finish */
|
||||
|
|
|
@ -498,7 +498,7 @@ struct tree_opt_pass pass_ud_rtl_dce =
|
|||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func |
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
'w' /* letter */
|
||||
};
|
||||
|
@ -816,7 +816,7 @@ struct tree_opt_pass pass_fast_rtl_dce =
|
|||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func |
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
'w' /* letter */
|
||||
};
|
||||
|
|
|
@ -3082,7 +3082,7 @@ struct tree_opt_pass pass_rtl_dse1 =
|
|||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func |
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
'w' /* letter */
|
||||
};
|
||||
|
@ -3101,7 +3101,7 @@ struct tree_opt_pass pass_rtl_dse2 =
|
|||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func |
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
'w' /* letter */
|
||||
};
|
||||
|
|
|
@ -2258,7 +2258,7 @@ struct tree_opt_pass pass_unshare_all_rtl =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing, /* todo_flags_finish */
|
||||
0 /* letter */
|
||||
};
|
||||
|
||||
|
|
|
@ -5513,7 +5513,7 @@ struct tree_opt_pass pass_thread_prologue_and_epilogue =
|
|||
TODO_verify_flow, /* todo_flags_start */
|
||||
TODO_dump_func |
|
||||
TODO_df_verify |
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
'w' /* letter */
|
||||
};
|
||||
|
|
|
@ -999,7 +999,7 @@ struct tree_opt_pass pass_rtl_fwprop =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
0 /* letter */
|
||||
};
|
||||
|
@ -1041,7 +1041,7 @@ struct tree_opt_pass pass_rtl_fwprop_addr =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
0 /* letter */
|
||||
};
|
||||
|
|
|
@ -6746,7 +6746,7 @@ struct tree_opt_pass pass_gcse =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func |
|
||||
TODO_verify_flow | TODO_ggc_collect, /* todo_flags_finish */
|
||||
'G' /* letter */
|
||||
|
|
|
@ -2108,8 +2108,8 @@ struct tree_opt_pass pass_global_alloc =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing
|
||||
| TODO_ggc_collect, /* todo_flags_finish */
|
||||
'g' /* letter */
|
||||
};
|
||||
|
||||
|
|
|
@ -4088,7 +4088,7 @@ struct tree_opt_pass pass_rtl_ifcvt =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
'C' /* letter */
|
||||
};
|
||||
|
@ -4122,7 +4122,7 @@ struct tree_opt_pass pass_if_after_combine =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
'C' /* letter */
|
||||
|
@ -4156,7 +4156,7 @@ struct tree_opt_pass pass_if_after_reload =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
'E' /* letter */
|
||||
|
|
|
@ -185,7 +185,7 @@ struct tree_opt_pass pass_rtl_loop_init =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing, /* todo_flags_finish */
|
||||
'L' /* letter */
|
||||
};
|
||||
|
||||
|
@ -218,7 +218,7 @@ struct tree_opt_pass pass_rtl_loop_done =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing, /* todo_flags_finish */
|
||||
'L' /* letter */
|
||||
};
|
||||
|
||||
|
@ -252,7 +252,7 @@ struct tree_opt_pass pass_rtl_move_loop_invariants =
|
|||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_verify |
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
'L' /* letter */
|
||||
};
|
||||
|
@ -286,7 +286,7 @@ struct tree_opt_pass pass_rtl_unswitch =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing, /* todo_flags_finish */
|
||||
'L' /* letter */
|
||||
};
|
||||
|
||||
|
@ -332,7 +332,7 @@ struct tree_opt_pass pass_rtl_unroll_and_peel_loops =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing, /* todo_flags_finish */
|
||||
'L' /* letter */
|
||||
};
|
||||
|
||||
|
@ -371,7 +371,7 @@ struct tree_opt_pass pass_rtl_doloop =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing, /* todo_flags_finish */
|
||||
'L' /* letter */
|
||||
};
|
||||
|
||||
|
|
|
@ -1457,7 +1457,7 @@ struct tree_opt_pass pass_lower_subreg2 =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func |
|
||||
TODO_ggc_collect |
|
||||
TODO_verify_flow, /* todo_flags_finish */
|
||||
|
|
|
@ -769,7 +769,7 @@ struct tree_opt_pass pass_mode_switching =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
0 /* letter */
|
||||
};
|
||||
|
|
|
@ -2653,7 +2653,7 @@ struct tree_opt_pass pass_sms =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
TODO_dump_func, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
'm' /* letter */
|
||||
|
|
|
@ -320,7 +320,7 @@ struct tree_opt_pass pass_postreload =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
TODO_ggc_collect | TODO_verify_rtl_sharing, /* todo_flags_finish */
|
||||
0 /* letter */
|
||||
};
|
||||
|
||||
|
@ -959,6 +959,8 @@ execute_function_todo (void *data)
|
|||
verify_stmts ();
|
||||
if (flags & TODO_verify_loops)
|
||||
verify_loop_closed_ssa ();
|
||||
if (flags & TODO_verify_rtl_sharing)
|
||||
verify_rtl_sharing ();
|
||||
#endif
|
||||
|
||||
cfun->last_verified = flags & TODO_verify_all;
|
||||
|
|
|
@ -1322,8 +1322,8 @@ struct tree_opt_pass pass_gcse2 =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func |
|
||||
TODO_verify_flow | TODO_ggc_collect, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing
|
||||
| TODO_verify_flow | TODO_ggc_collect,/* todo_flags_finish */
|
||||
'J' /* letter */
|
||||
};
|
||||
|
||||
|
|
|
@ -1598,7 +1598,7 @@ struct tree_opt_pass pass_postreload_cse =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
'o' /* letter */
|
||||
};
|
||||
|
|
|
@ -3332,7 +3332,7 @@ struct tree_opt_pass pass_peephole2 =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
'z' /* letter */
|
||||
};
|
||||
|
@ -3493,7 +3493,7 @@ struct tree_opt_pass pass_split_for_shorten_branches =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing, /* todo_flags_finish */
|
||||
0 /* letter */
|
||||
};
|
||||
|
||||
|
|
|
@ -3242,7 +3242,7 @@ struct tree_opt_pass pass_stack_regs_run =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
'k' /* letter */
|
||||
|
|
|
@ -2121,7 +2121,7 @@ struct tree_opt_pass pass_regmove =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
'N' /* letter */
|
||||
|
|
|
@ -1952,7 +1952,7 @@ struct tree_opt_pass pass_regrename =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
'n' /* letter */
|
||||
};
|
||||
|
@ -1985,7 +1985,7 @@ struct tree_opt_pass pass_cprop_hardreg =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing, /* todo_flags_finish */
|
||||
'n' /* letter */
|
||||
};
|
||||
|
||||
|
|
|
@ -1428,7 +1428,7 @@ struct tree_opt_pass pass_rtl_seqabstr = {
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
'Q' /* letter */
|
||||
|
|
|
@ -3185,7 +3185,7 @@ struct tree_opt_pass pass_sched =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func |
|
||||
TODO_verify_flow |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
|
@ -3205,7 +3205,7 @@ struct tree_opt_pass pass_sched2 =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func |
|
||||
TODO_verify_flow |
|
||||
TODO_ggc_collect, /* todo_flags_finish */
|
||||
|
|
|
@ -3874,7 +3874,7 @@ struct tree_opt_pass pass_see =
|
|||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_verify |
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
'u' /* letter */
|
||||
};
|
||||
|
|
|
@ -410,7 +410,7 @@ struct tree_opt_pass pass_tracer =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing, /* todo_flags_finish */
|
||||
'T' /* letter */
|
||||
};
|
||||
|
||||
|
|
|
@ -169,6 +169,7 @@ struct dump_file_info
|
|||
#define TODO_dump_cgraph (1 << 7)
|
||||
#define TODO_remove_functions (1 << 8)
|
||||
#define TODO_rebuild_frequencies (1 << 9)
|
||||
#define TODO_verify_rtl_sharing (1 << 10)
|
||||
|
||||
/* To-do flags for calls to update_ssa. */
|
||||
|
||||
|
@ -180,13 +181,13 @@ struct dump_file_info
|
|||
in blocks that have one or more edges with no incoming definition
|
||||
for O_j. This would lead to uninitialized warnings for O_j's
|
||||
symbol. */
|
||||
#define TODO_update_ssa (1 << 10)
|
||||
#define TODO_update_ssa (1 << 11)
|
||||
|
||||
/* Update the SSA form without inserting any new PHI nodes at all.
|
||||
This is used by passes that have either inserted all the PHI nodes
|
||||
themselves or passes that need only to patch use-def and def-def
|
||||
chains for virtuals (e.g., DCE). */
|
||||
#define TODO_update_ssa_no_phi (1 << 11)
|
||||
#define TODO_update_ssa_no_phi (1 << 12)
|
||||
|
||||
/* Insert PHI nodes everywhere they are needed. No pruning of the
|
||||
IDF is done. This is used by passes that need the PHI nodes for
|
||||
|
@ -197,7 +198,7 @@ struct dump_file_info
|
|||
may be doing something wrong. Inserting PHI nodes for an old name
|
||||
where not all edges carry a new replacement may lead to silent
|
||||
codegen errors or spurious uninitialized warnings. */
|
||||
#define TODO_update_ssa_full_phi (1 << 12)
|
||||
#define TODO_update_ssa_full_phi (1 << 13)
|
||||
|
||||
/* Passes that update the SSA form on their own may want to delegate
|
||||
the updating of virtual names to the generic updater. Since FUD
|
||||
|
@ -205,30 +206,30 @@ struct dump_file_info
|
|||
to do. NOTE: If this flag is used, any OLD->NEW mappings for real
|
||||
names are explicitly destroyed and only the symbols marked for
|
||||
renaming are processed. */
|
||||
#define TODO_update_ssa_only_virtuals (1 << 13)
|
||||
#define TODO_update_ssa_only_virtuals (1 << 14)
|
||||
|
||||
/* Some passes leave unused local variables that can be removed from
|
||||
cfun->unexpanded_var_list. This reduces the size of dump files and
|
||||
the memory footprint for VAR_DECLs. */
|
||||
#define TODO_remove_unused_locals (1 << 14)
|
||||
#define TODO_remove_unused_locals (1 << 15)
|
||||
|
||||
/* Internally used for the first in a sequence of passes. It is set
|
||||
for the passes that are handed to register_dump_files. */
|
||||
#define TODO_set_props (1 << 15)
|
||||
#define TODO_set_props (1 << 16)
|
||||
|
||||
/* Call df_finish at the end of the pass. This is done after all of
|
||||
the dumpers have been allowed to run so that they have access to
|
||||
the instance before it is destroyed. */
|
||||
#define TODO_df_finish (1 << 16)
|
||||
#define TODO_df_finish (1 << 17)
|
||||
|
||||
/* Call df_verify at the end of the pass if checking is enabled. */
|
||||
#define TODO_df_verify (1 << 17)
|
||||
#define TODO_df_verify (1 << 18)
|
||||
|
||||
/* Internally used for the first instance of a pass. */
|
||||
#define TODO_mark_first_instance (1 << 18)
|
||||
#define TODO_mark_first_instance (1 << 19)
|
||||
|
||||
/* Rebuild aliasing info. */
|
||||
#define TODO_rebuild_alias (1 << 19)
|
||||
#define TODO_rebuild_alias (1 << 20)
|
||||
|
||||
#define TODO_update_ssa_any \
|
||||
(TODO_update_ssa \
|
||||
|
|
|
@ -3296,7 +3296,7 @@ struct tree_opt_pass pass_variable_tracking =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
TODO_dump_func | TODO_verify_rtl_sharing,/* todo_flags_finish */
|
||||
'V' /* letter */
|
||||
};
|
||||
|
||||
|
|
|
@ -384,7 +384,7 @@ struct tree_opt_pass pass_web =
|
|||
0, /* properties_provided */
|
||||
0, /* properties_destroyed */
|
||||
0, /* todo_flags_start */
|
||||
TODO_df_finish |
|
||||
TODO_df_finish | TODO_verify_rtl_sharing |
|
||||
TODO_dump_func, /* todo_flags_finish */
|
||||
'Z' /* letter */
|
||||
};
|
||||
|
|
Loading…
Add table
Reference in a new issue