This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [patches] NOTE_INSN_BLOCK/code reordering+duplicating changes
- To: Jan Hubicka <jh at suse dot cz>
- Subject: Re: [patches] NOTE_INSN_BLOCK/code reordering+duplicating changes
- From: Jan Hubicka <jh at suse dot cz>
- Date: Tue, 6 Nov 2001 17:54:42 +0100
- Cc: gcc-patches at gcc dot gnu dot org, rth at cygnus dot com, patches at x86-64 dot org
- References: <20011106174401.B3649@atrey.karlin.mff.cuni.cz>
> Tue Nov 6 17:23:15 CET 2001 Jan Hubicka <jh@suse.cz>
>
> * cfgcleanup.c (merge_blocks): Disable code motion before sibcall.
> * cfglayout.c (struct scope_def): Kill fields note_beg, note_end,
> bb_beg, bb_end, bbs, num_bbs; add block.
> (scope_forest_info): Kill.
> (forest): Rename to scope_tree.
> (relate_bbs_with_scope, insert_intra_1, insert_intra_bb_scope_notes,
> insert_inter_bb_scope_notes): Kill.
> (rebuild_scope_notes): Take scope parameter; rewrite.
> (dump_scope_forest): Rename to dump_scope_tree.
> (dump_scope_forest_1): Rename to dump_scope_tree_1.
> (free_scope_forest): Rename to free_scope_tree; rewrite.
> (free_scope_forest_1): Kill.
> (get_next_bb_note, get_prev_bb_note): Kill.
> (set_insn_scopes, regenerate_block_notes): New.
> * emit-rtl.c
> (make_insn_raw, make_jump_insn_raw, make_call_insn_raw): Clear
> INSN_SCOPE field.
> * final.c (final_start_function): Do not reorder_blocks.
> * integrate.c (copy_insn_list): Copy scope.
> * jump.c (duplicate_loop_exit_test): Do not care NOTE_INSN_BLOCK;
> copy scope.
> * loop.c (loop_optimize): Do not reorder blocks.
> * rtl.def (INSN, JUMP_INSN, CALL_INSN): Add 7th field for scopes;
> move the rest.
> * rtl.h (INSN_SCOPE, X0SCOPE): New.
> (rtunion_def): Add rtscope.
> (CALL_INSN_FUNCTION_USAGE, JUMP_LABEL): Set to 8th field.
> (set_insn_scopes, regenerate_block_notes): Declare.
> * toplev.c (enum dump_file_index): Add DFI_final.
> (dump_file_info): Add "final".
> (rest_of_compilation): Call set_insn_scopes and regenerate_block_notes;
> dump final pass.
> * unroll.c (unroll_loop): Do not verify EH and BLOCK notes.
> (copy_loop_body): Copy the INSN_SCOPE.
Forgot to mention: Bootstrapped/regtested i686