diff options
author | Richard Henderson <rth@gcc.gnu.org> | 2001-12-30 20:19:35 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2001-12-30 20:19:35 -0800 |
commit | d73b1f074b027d0bf173cbe7b6dc88df5307889c (patch) | |
tree | eda556eeb126b284e63a737eeba7cb809f6af60e /gcc/sched-rgn.c | |
parent | eb3aaa5b8614583989296fe7a7ce16baf7c258f4 (diff) | |
download | gcc-d73b1f074b027d0bf173cbe7b6dc88df5307889c.zip gcc-d73b1f074b027d0bf173cbe7b6dc88df5307889c.tar.gz gcc-d73b1f074b027d0bf173cbe7b6dc88df5307889c.tar.bz2 |
cfglayout.c (scope_def, [...]): Remove.
* cfglayout.c (scope_def, scope_forest_info, forest,
relate_bbs_with_scopes, make_new_scope, build_scope_forest,
remove_scope_notes, insert_intra_before_1, insert_intra_1,
insert_intra_bb_scope_notes, insert_inter_bb_scope_notes,
rebuild_scope_notes, free_scope_forest_1, dump_scope_forest,
dump_scope_forest_1, get_next_bb_note, get_prev_bb_note): Remove.
(fixup_reorder_chain): Don't set scope for bb.
(insn_scopes, scope_to_insns_initialize, set_block_levels,
change_scope, scope_to_insns_finalize): New.
(cfg_layout_initialize, cfg_layout_finalize): Update to match.
* cfglayout.h (scope_def, scope): Remove.
(reorder_block_def): Remove scope member.
(scope_to_insns_initialize, scope_to_insns_finalize): Declare.
* haifa-sched.c: Revert reemit_other_notes change.
* sched-ebb.c (schedule_ebbs): Don't call remove_unnecessary_notes.
Use scope_to_insns_initialize and scope_to_insns_finalize.
* sched-rgn.c (schedule_insns): Likewise.
* gcc.dg/debug-6.c: New.
From-SVN: r48412
Diffstat (limited to 'gcc/sched-rgn.c')
-rw-r--r-- | gcc/sched-rgn.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/gcc/sched-rgn.c b/gcc/sched-rgn.c index 6824204..892c03f 100644 --- a/gcc/sched-rgn.c +++ b/gcc/sched-rgn.c @@ -60,6 +60,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "except.h" #include "toplev.h" #include "recog.h" +#include "cfglayout.h" #include "sched-int.h" /* Define when we want to do count REG_DEAD notes before and after scheduling @@ -2896,9 +2897,7 @@ schedule_insns (dump_file) if (n_basic_blocks == 0) return; - /* Remove lexical block notes for empty regions. These get shuffled - about during scheduling and confuse the debugging issue. */ - remove_unnecessary_notes (); + scope_to_insns_initialize (); nr_inter = 0; nr_spec = 0; @@ -2986,6 +2985,8 @@ schedule_insns (dump_file) if (write_symbols != NO_DEBUG) rm_redundant_line_notes (); + scope_to_insns_finalize (); + if (sched_verbose) { if (reload_completed == 0 && flag_schedule_interblock) |