From: Jason Molenda Date: Wed, 9 Sep 1998 04:16:53 +0000 (+0000) Subject: 1998-09-08 Jason Molenda (jsm@bugshack.cygnus.com) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=fc4109089c227d1aaa33d4f7fe51be5d6f5fdf54;p=binutils-gdb.git 1998-09-08 Jason Molenda (jsm@bugshack.cygnus.com) * breakpoint.c (bpstat_stop_status): Declare a bp match if the current fp matches the bp->fp OR if the current fp is less than the bp->fp if we're looking at a bp_step_resume breakpoint. PR 15992. With a bp_step_resume type breakpoint, the frame pointer check exists in case we recurse and execute the same text section--we want to not stop there because it would confuse the user. So gdb checks to see that the frame pointer matches the one recorded in the breakpoint. If the current frame pointer is less than the frame pointer recorded in the breakpoint, then something odd is happened and we should declare that we're at the breakpoint so that we clear it out. This happens in Purify instrumented executables on PA systems, at least. They insert some calls out to Purify code in the function epilogue and it confuses GDB (which assumes that the frame pointer does not move around through the entire execution of a function). --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index d84e78dc063..ccf0cf5fa5f 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +1998-09-08 Jason Molenda (jsm@bugshack.cygnus.com) + + * breakpoint.c (bpstat_stop_status): Declare a bp match if the + current fp matches the bp->fp OR if the current fp is less than + the bp->fp if we're looking at a bp_step_resume breakpoint. + Tue Sep 8 19:42:58 1998 Stan Shebs * symtab.h (struct symtab): Remove EXTRA_SYMTAB_INFO hook,