--- gcc/config/avr/avr.c.org Sun Dec 1 04:43:28 2002 +++ gcc/config/avr/avr.c Sun Dec 1 14:15:20 2002 @@ -853,10 +853,14 @@ fputs ("\t", file); epilogue_size += out_adj_frame_ptr (file, -size); - if (interrupt_func_p || signal_func_p) + if (interrupt_func_p) { epilogue_size += out_set_stack_ptr (file, -1, 0); } + else if (signal_func_p) + { + epilogue_size += out_set_stack_ptr (file, 0, 0); + } else { epilogue_size += out_set_stack_ptr (file, -1, -1);