* mips-tdep.c (mips_frame_chain): If frame size zero, return zero.
* rs6000-tdep.c: Add comment about framelessness.
This commit is contained in:
parent
6110df28cd
commit
3f528883ae
3 changed files with 10 additions and 1 deletions
|
@ -47,6 +47,7 @@ Wed Sep 22 10:28:06 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
|
|||
retval.step_resume.
|
||||
|
||||
* mips-tdep.c (mips_frame_chain): If frame size zero, return zero.
|
||||
* rs6000-tdep.c: Add comment about framelessness.
|
||||
|
||||
* remote-nindy.c: Declare ninMemGet and ninMemPut.
|
||||
|
||||
|
|
|
@ -346,7 +346,13 @@ mips_frame_chain(frame)
|
|||
of stack (or otherwise hosed). If we don't check frame size,
|
||||
we loop forever if we see a zero size frame. */
|
||||
if (PROC_FRAME_REG (proc_desc) == SP_REGNUM
|
||||
&& PROC_FRAME_OFFSET (proc_desc) == 0)
|
||||
&& PROC_FRAME_OFFSET (proc_desc) == 0
|
||||
/* Frameless functions, which can happen on the innermost frame
|
||||
or a frame which was innermost when a signal happened, can
|
||||
have frame size zero. No need to check for non-frameless
|
||||
functions in these situations, though (I don't think). */
|
||||
&& frame->next != NULL
|
||||
&& !frame->next->signal_handler_caller)
|
||||
return 0;
|
||||
else
|
||||
return read_next_frame_reg(frame, PROC_FRAME_REG(proc_desc))
|
||||
|
|
|
@ -949,6 +949,8 @@ int pcsaved;
|
|||
|
||||
if (fi->next != NULL)
|
||||
/* Don't even think about framelessness except on the innermost frame. */
|
||||
/* FIXME: Can also be frameless if fi->next->signal_handler_caller (if
|
||||
a signal happens while executing in a frameless function). */
|
||||
return 0;
|
||||
|
||||
func_start = get_pc_function_start (fi->pc) + FUNCTION_START_OFFSET;
|
||||
|
|
Loading…
Reference in a new issue