diff options
author | Andrey Belevantsev <abel@ispras.ru> | 2009-11-13 17:27:13 +0300 |
---|---|---|
committer | Andrey Belevantsev <abel@gcc.gnu.org> | 2009-11-13 17:27:13 +0300 |
commit | bcf3377540d2e5d8ea63fdb8aed16cff16f6ba85 (patch) | |
tree | 33d70889d193e4a1474e119c509e0e1fcd50b507 /gcc/sel-sched-ir.h | |
parent | ba0dc4bed674b0c5bf0df8a4b2fee35617f64335 (diff) | |
download | gcc-bcf3377540d2e5d8ea63fdb8aed16cff16f6ba85.tar.gz |
sched-deps.c (init_deps): New parameter lazy_reg_last.
2009-11-13 Andrey Belevantsev <abel@ispras.ru>
* sched-deps.c (init_deps): New parameter lazy_reg_last. Don't
allocate reg_last when in case lazy_reg_last is true.
(init_deps_reg_last): New.
(free_deps): When max_reg is 0, this context is already freed.
* sched-int.h (init_deps_reg_last): Export.
(init_deps): Update prototype.
* sched-ebb.c (schedule_ebb): Update the call to init_deps.
* sched-rgn.c (sched_rgn_compute_dependencies): Likewise.
* ddg.c (build_intra_loop_deps): Likewise.
* sel-sched-ir.c (copy_deps_context, create_deps_context,
reset_deps_context, deps_init_id): Likewise.
(init_first_time_insn_data): Lazy allocate INSN_DEPS_CONTEXT.
(free_data_for_scheduled_insn): New, break down from ...
(free_first_time_insn_data): ... here.
(has_dependence_p): Allocate reg_last now, when it is needed.
(extend_insn_data): When maximal LUID is big enough, allocate
per-insn data in smaller chunks.
* sel-sched-ir.h (free_data_for_scheduled_insn): Export.
* sel-sched.c (update_seqnos_and_stage): Free INSN_DEPS_CONTEXT
in scheduled insn.
From-SVN: r154147
Diffstat (limited to 'gcc/sel-sched-ir.h')
-rw-r--r-- | gcc/sel-sched-ir.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/sel-sched-ir.h b/gcc/sel-sched-ir.h index 70163c36c38..9563d2a0a4f 100644 --- a/gcc/sel-sched-ir.h +++ b/gcc/sel-sched-ir.h @@ -1646,6 +1646,7 @@ extern void init_lv_sets (void); extern void free_lv_sets (void); extern void setup_nop_and_exit_insns (void); extern void free_nop_and_exit_insns (void); +extern void free_data_for_scheduled_insn (insn_t); extern void setup_nop_vinsn (void); extern void free_nop_vinsn (void); extern void sel_set_sched_flags (void); |