* stack.c (print_frame_info): Print specially if dummy frame.
authorJim Kingdon <jkingdon@engr.sgi.com>
Thu, 15 Apr 1993 03:36:02 +0000 (03:36 +0000)
committerJim Kingdon <jkingdon@engr.sgi.com>
Thu, 15 Apr 1993 03:36:02 +0000 (03:36 +0000)
gdb/ChangeLog
gdb/stack.c

index bbb0081d7add0e96eee5d128d397550c4bfb4284..0f611b11c25b828217c1854b98b725786a4eb6c2 100644 (file)
@@ -1,5 +1,7 @@
 Wed Apr 14 17:12:51 1993  Jim Kingdon  (kingdon@cygnus.com)
 
+       * stack.c (print_frame_info): Print specially if dummy frame.
+
        * breakpoint.c: Add comments regarding within_scope future direction.
 
        * Version 4.8.3.
index 31d7b2846071fca01db91c6c34fd0778d30cdfd3..b5f965e4c4e2b62d0fc4f0a0426033daf946a4b1 100644 (file)
@@ -29,6 +29,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 #include "target.h"
 #include "breakpoint.h"
 #include "demangle.h"
+#include "inferior.h"
 
 static void
 return_command PARAMS ((char *, int));
@@ -142,9 +143,15 @@ print_frame_info (fi, level, source, args)
   enum language funlang = language_unknown;
   int numargs;
 
-#ifdef CORE_NEEDS_RELOCATION
-  CORE_NEEDS_RELOCATION(fi->pc);
-#endif
+  if (PC_IN_CALL_DUMMY (fi->pc, read_register (SP_REGNUM), fi->frame))
+    {
+      /* Do this regardless of SOURCE because we don't have any source
+        to list for this frame.  */
+      if (level >= 0)
+       printf_filtered ("#%-2d ", level);
+      printf_filtered ("<function called from gdb>\n");
+      return;
+    }
 
   sal = find_pc_line (fi->pc, fi->next_frame);
   func = find_pc_function (fi->pc);