From 36fb33de4830007d79ae302896536736534e0872 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Wed, 18 Nov 2015 10:01:35 +0100 Subject: [PATCH] Release memory in haifa-sched * haifa-sched.c (haifa_finish_h_i_d): Release reg_set_list. From-SVN: r230520 --- gcc/ChangeLog | 4 ++++ gcc/haifa-sched.c | 13 ++++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 71add6098ca..360bbc83af2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2015-11-18 Martin Liska + + * haifa-sched.c (haifa_finish_h_i_d): Release reg_set_list. + 2015-11-18 Martin Liska * tree-ssa-uninit.c (convert_control_dep_chain_into_preds): diff --git a/gcc/haifa-sched.c b/gcc/haifa-sched.c index e712110b2d8..7443ac56cfe 100644 --- a/gcc/haifa-sched.c +++ b/gcc/haifa-sched.c @@ -9147,17 +9147,24 @@ haifa_finish_h_i_d (void) { int i; haifa_insn_data_t data; - struct reg_use_data *use, *next; + reg_use_data *use, *next_use; + reg_set_data *set, *next_set; FOR_EACH_VEC_ELT (h_i_d, i, data) { free (data->max_reg_pressure); free (data->reg_pressure); - for (use = data->reg_use_list; use != NULL; use = next) + for (use = data->reg_use_list; use != NULL; use = next_use) { - next = use->next_insn_use; + next_use = use->next_insn_use; free (use); } + for (set = data->reg_set_list; set != NULL; set = next_set) + { + next_set = set->next_insn_set; + free (set); + } + } h_i_d.release (); } -- 2.30.2