diff options
author | Andrew Cagney <cagney@redhat.com> | 2003-03-12 15:39:30 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 2003-03-12 15:39:30 +0000 |
commit | 7a25a7c1cc419c2f4106843387e0c8be92471523 (patch) | |
tree | e5d344262a55505f1431211070aed2ee1a9667bf /gdb/dummy-frame.c | |
parent | c4d8feb262fa437232fb144da11b9f449d3b7715 (diff) | |
download | gdb-7a25a7c1cc419c2f4106843387e0c8be92471523.zip gdb-7a25a7c1cc419c2f4106843387e0c8be92471523.tar.gz gdb-7a25a7c1cc419c2f4106843387e0c8be92471523.tar.bz2 |
2003-03-12 Andrew Cagney <cagney@redhat.com>
Eliminate the need for POP_FRAME.
* frame.c (do_frame_unwind_register): New function.
(frame_pop): When no POP_FRAME, pop the frame using register
unwind and a scratch regcache.
(frame_saved_regs_pop): Delete function.
(trad_frame_unwinder): Update.
* d10v-tdep.c (d10v_frame_pop): Delete function.
(d10v_frame_unwind): Update.
* sentinel-frame.c (sentinel_frame_pop): Delete function.
(sentinel_frame_unwinder): Update.
* dummy-frame.c (dummy_frame_pop): Delete function.
(dummy_frame_unwind): Update.
* frame-unwind.h (frame_unwind_pop_ftype): Delete definition.
(struct frame_unwind): Update.
Diffstat (limited to 'gdb/dummy-frame.c')
-rw-r--r-- | gdb/dummy-frame.c | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/gdb/dummy-frame.c b/gdb/dummy-frame.c index 95c8598..bf4a31c 100644 --- a/gdb/dummy-frame.c +++ b/gdb/dummy-frame.c @@ -282,37 +282,6 @@ discard_innermost_dummy (struct dummy_frame **stack) xfree (tbd); } -/* Function: dummy_frame_pop. Restore the machine state from a saved - dummy stack frame. */ - -static void -dummy_frame_pop (struct frame_info *fi, void **cache, - struct regcache *regcache) -{ - struct dummy_frame *dummy = cached_find_dummy_frame (fi, cache); - - /* If it isn't, what are we even doing here? */ - gdb_assert (get_frame_type (fi) == DUMMY_FRAME); - - if (dummy == NULL) - error ("Can't pop dummy frame!"); - - /* Discard all dummy frames up-to but not including this one. */ - while (dummy_frame_stack != dummy) - discard_innermost_dummy (&dummy_frame_stack); - - /* Restore this one. */ - regcache_cpy (regcache, dummy->regcache); - flush_cached_frames (); - - /* Now discard it. */ - discard_innermost_dummy (&dummy_frame_stack); - - /* Note: target changed would be better. Registers, memory and - frame are all invalid. */ - flush_cached_frames (); -} - void generic_pop_dummy_frame (void) { @@ -390,7 +359,6 @@ dummy_frame_id_unwind (struct frame_info *frame, static struct frame_unwind dummy_frame_unwind = { - dummy_frame_pop, dummy_frame_id_unwind, dummy_frame_register_unwind }; |