diff options
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/except.c | 1 | ||||
-rw-r--r-- | gcc/function.c | 3 | ||||
-rw-r--r-- | gcc/gcse.c | 7 | ||||
-rw-r--r-- | gcc/stmt.c | 4 |
5 files changed, 19 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4435b72..3680ac3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +Fri Oct 29 02:51:35 1999 Mark Mitchell <mark@codesourcery.com> + + * except.c (free_eh_nesting_info): Free the info itself. + * function.c (free_after_compilation): Don't free NULL. + * gcse.c (alloc_pre_mem): Free the temp_bitmap, too. + (pre_edge_insert): Free inserted. + * stmt.c (free_stmt_status): Don't free NULL. + 1999-10-28 21:27 -0700 Zack Weinberg <zack@bitmover.com> * cpplib.h (struct cpp_buffer: fname, nominal_fname, diff --git a/gcc/except.c b/gcc/except.c index 3c7692c..c6f7bf5 100644 --- a/gcc/except.c +++ b/gcc/except.c @@ -3297,5 +3297,6 @@ free_eh_nesting_info (info) free (info->handlers[x]); free (info->handlers); } + free (info); } } diff --git a/gcc/function.c b/gcc/function.c index 890f62b..d5cdc26 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -426,7 +426,8 @@ free_after_compilation (f) if (free_machine_status) (*free_machine_status) (f); - free (f->x_parm_reg_stack_loc); + if (f->x_parm_reg_stack_loc) + free (f->x_parm_reg_stack_loc); f->arg_offset_rtx = NULL; f->return_rtx = NULL; @@ -4108,8 +4108,8 @@ alloc_pre_mem (n_blocks, n_exprs) transp = sbitmap_vector_alloc (n_blocks, n_exprs); comp = sbitmap_vector_alloc (n_blocks, n_exprs); antloc = sbitmap_vector_alloc (n_blocks, n_exprs); - temp_bitmap = sbitmap_vector_alloc (n_blocks, n_exprs); + pre_optimal = NULL; pre_redundant = NULL; pre_insert_map = NULL; @@ -4130,6 +4130,7 @@ free_pre_mem () free (transp); free (comp); free (antloc); + free (temp_bitmap); if (pre_optimal) free (pre_optimal); @@ -4535,6 +4536,10 @@ pre_edge_insert (edge_list, index_map) } } } + + /* Clean up. */ + free (inserted); + return did_insert; } @@ -559,8 +559,8 @@ free_stmt_status (f) /* We're about to free the function obstack. If we hold pointers to things allocated there, then we'll try to mark them when we do GC. So, we clear them out here explicitly. */ - - free (f->stmt); + if (f->stmt) + free (f->stmt); f->stmt = NULL; } |