aboutsummaryrefslogtreecommitdiff
path: root/gdb/stack.c
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2003-10-31 22:38:22 +0000
committerAndrew Cagney <cagney@redhat.com>2003-10-31 22:38:22 +0000
commite8bcf01f1b65ef438a40698ce2e2a116d9fc3767 (patch)
tree1c350f7df2ba7ec9c4f5ab1c3d994cf26e69e6ff /gdb/stack.c
parent4c05fe5325cd1dc599999f503214fede4875e368 (diff)
downloadgdb-e8bcf01f1b65ef438a40698ce2e2a116d9fc3767.zip
gdb-e8bcf01f1b65ef438a40698ce2e2a116d9fc3767.tar.gz
gdb-e8bcf01f1b65ef438a40698ce2e2a116d9fc3767.tar.bz2
2003-10-31 Andrew Cagney <cagney@redhat.com>
* stack.c (return_command): Use get_frame_type, instead of CALL_DUMMY_HAS_COMPLETED. * inferior.h (CALL_DUMMY_HAS_COMPLETED): Delete definition. * config/pa/tm-hppa.h (CALL_DUMMY_HAS_COMPLETED): Delete macro.
Diffstat (limited to 'gdb/stack.c')
-rw-r--r--gdb/stack.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/gdb/stack.c b/gdb/stack.c
index 144f778..74941f9 100644
--- a/gdb/stack.c
+++ b/gdb/stack.c
@@ -1945,9 +1945,17 @@ The location at which to store the function's return value is unknown.\n";
/* NOTE: cagney/2003-01-18: Is this silly? Instead of popping all
the frames in sequence, should this code just pop the dummy frame
directly? */
- if (CALL_DUMMY_HAS_COMPLETED (read_pc(), read_sp (),
- get_frame_base (get_current_frame ())))
+#ifdef DEPRECATED_CALL_DUMMY_HAS_COMPLETED
+ /* Since all up-to-date architectures return direct to the dummy
+ breakpoint address, a dummy frame has, by definition, always
+ completed. Hence this method is no longer needed. */
+ if (DEPRECATED_CALL_DUMMY_HAS_COMPLETED (read_pc(), read_sp (),
+ get_frame_base (get_current_frame ())))
frame_pop (get_current_frame ());
+#else
+ if (get_frame_type (get_current_frame ()) == DUMMY_FRAME)
+ frame_pop (get_current_frame ());
+#endif
/* If interactive, print the frame that is now current. */
if (from_tty)