From 85f5dbea3df7d0a97401259a273db2b8d02119e8 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 5 Mar 2013 07:02:36 +0100 Subject: [PATCH] re PR middle-end/56461 (GCC is leaking lots of memory) PR middle-end/56461 * sel-sched-ir.c (free_sched_pools): Release succs_info_pool.stack[succs_info_pool.max_top] vectors too if succs_info_pool.max_top isn't -1. From-SVN: r196450 --- gcc/ChangeLog | 5 +++++ gcc/sel-sched-ir.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 630ed9fa899..3abc676ec51 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2013-03-05 Jakub Jelinek + PR middle-end/56461 + * sel-sched-ir.c (free_sched_pools): Release + succs_info_pool.stack[succs_info_pool.max_top] vectors too + if succs_info_pool.max_top isn't -1. + PR bootstrap/56509 * opts.c (opts_obstack, opts_concat): Moved to... * opts-common.c (opts_obstack, opts_concat): ... here. diff --git a/gcc/sel-sched-ir.c b/gcc/sel-sched-ir.c index ae17351b595..91e91ec37fd 100644 --- a/gcc/sel-sched-ir.c +++ b/gcc/sel-sched-ir.c @@ -5020,7 +5020,7 @@ free_sched_pools (void) free_alloc_pool (sched_lists_pool); gcc_assert (succs_info_pool.top == -1); - for (i = 0; i < succs_info_pool.max_top; i++) + for (i = 0; i <= succs_info_pool.max_top; i++) { succs_info_pool.stack[i].succs_ok.release (); succs_info_pool.stack[i].succs_other.release (); -- 2.30.2