http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48403

--- Comment #18 from Steven Bosscher <steven at gcc dot gnu.org> 2011-04-02 
19:16:17 UTC ---
Something appears to be wrong with the allocation of scheduled_insns:

* It is VEC_alloc'ed on the heap in sched_extend_ready_list() but it is never
VEC_free'ed.

* It is allocated if sched_ready_n_insns == -1, which is the initial state
("static int sched_ready_n_insns = -1;") and also the state after
sched_finish_ready_list(). Therefore, AFAICU, a schedule_insns VEC is leaked
for each region.

I would have VEC_alloc'ed schedule_insns once, at the start of the scheduler,
and VEC_reserve elements in sched_extend_ready_list().  But I am not
sufficiently familiar with the scheduler to propose a patch.

Reply via email to