diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/dce.c | 1 | ||||
-rw-r--r-- | gcc/ggc-common.c | 2 |
3 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 054cabc..67d1649 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2008-09-11 Jan Hubicka <jh@suse.cz> + * ggc-common.c (loc_array): Make static. + * dce.c (rest_of_handle_ud_dce): Free worklist. + +2008-09-11 Jan Hubicka <jh@suse.cz> + * cgraph.c (cgraph_release_function_body): Plug memory leak on ipa_transforms_to_apply and CFG; ggc_free gimple df and struct function so we are sure we do not dangle it forever. @@ -424,6 +424,7 @@ rest_of_handle_ud_dce (void) insn = VEC_pop (rtx, worklist); mark_reg_dependencies (insn); } + VEC_free (rtx, heap, worklist); /* Before any insns are deleted, we must remove the chains since they are not bidirectional. */ diff --git a/gcc/ggc-common.c b/gcc/ggc-common.c index 8c0e459..747ec4c 100644 --- a/gcc/ggc-common.c +++ b/gcc/ggc-common.c @@ -947,7 +947,7 @@ cmp_statistic (const void *loc1, const void *loc2) } /* Collect array of the descriptors from hashtable. */ -struct loc_descriptor **loc_array; +static struct loc_descriptor **loc_array; static int add_statistics (void **slot, void *b) { |