function.c (free_after_compilation): Free epilogue_delay_list.

* function.c (free_after_compilation): Free epilogue_delay_list.
	(prepare_function_start): Assert that previous compilation was freed.

From-SVN: r133787
This commit is contained in:
Jan Hubicka 2008-04-01 10:51:25 +02:00 committed by Jan Hubicka
parent ec24c3a3c9
commit 113c63b8e3
2 changed files with 9 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2008-04-01 Jan Hubicka <jh@suse.cz>
* function.c (free_after_compilation): Free epilogue_delay_list.
(prepare_function_start): Assert that previous compilation was freed.
2008-04-01 Jan Hubicka <jh@suse.cz>
Jim Wilson <wilson@tuliptree.org>
Andreas Tobler <andreast@gcc.gnu.org>

View file

@ -313,7 +313,8 @@ free_after_compilation (struct function *f)
VEC_free (int, heap, prologue);
VEC_free (int, heap, epilogue);
VEC_free (int, heap, sibcall_epilogue);
free (rtl.emit.regno_pointer_align);
if (rtl.emit.regno_pointer_align)
free (rtl.emit.regno_pointer_align);
memset (&rtl, 0, sizeof (rtl));
f->eh = NULL;
@ -323,6 +324,7 @@ free_after_compilation (struct function *f)
f->arg_offset_rtx = NULL;
f->return_rtx = NULL;
f->internal_arg_pointer = NULL;
f->epilogue_delay_list = NULL;
}
/* Return size needed for stack frame based on slots so far allocated.
@ -3935,6 +3937,7 @@ push_struct_function (tree fndecl)
static void
prepare_function_start (void)
{
gcc_assert (!rtl.emit.x_last_insn);
init_emit ();
init_varasm_status ();
init_expr ();