From 90a6fffbda7b597c2ea29b81668218e10a174ff1 Mon Sep 17 00:00:00 2001 From: Andrew Cagney Date: Wed, 9 Apr 2003 18:24:01 +0000 Subject: [PATCH] 2003-04-09 Andrew Cagney * frame.c (get_frame_id): Eliminate code updating "frame". (legacy_get_prev_frame): Ditto. (get_frame_base): Return id.base directly. (deprecated_update_frame_base_hack): Update "id.base". * frame.h (struct frame_info): Delete field "frame". --- gdb/ChangeLog | 8 ++++++++ gdb/frame.c | 21 +++------------------ gdb/frame.h | 6 ------ 3 files changed, 11 insertions(+), 24 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index e0a42b61dbf..afedf69d9da 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,11 @@ +2003-04-09 Andrew Cagney + + * frame.c (get_frame_id): Eliminate code updating "frame". + (legacy_get_prev_frame): Ditto. + (get_frame_base): Return id.base directly. + (deprecated_update_frame_base_hack): Update "id.base". + * frame.h (struct frame_info): Delete field "frame". + 2003-04-09 Andrew Cagney * NEWS: Mention that the "Sequent family" is obsolete. diff --git a/gdb/frame.c b/gdb/frame.c index fd2b3eac198..198642aa9ab 100644 --- a/gdb/frame.c +++ b/gdb/frame.c @@ -64,11 +64,8 @@ get_frame_id (struct frame_info *fi) /* Find THIS frame's ID. */ fi->unwind->this_id (fi->next, &fi->prologue_cache, &fi->id); fi->id_p = 1; - /* FIXME: cagney/2002-12-18: Instead of this hack, should only - store the frame ID in PREV_FRAME. */ - fi->frame = fi->id.base; } - return frame_id_build (fi->frame, get_frame_pc (fi)); + return frame_id_build (fi->id.base, get_frame_pc (fi)); } const struct frame_id null_frame_id; /* All zeros. */ @@ -1172,12 +1169,6 @@ legacy_get_prev_frame (struct frame_info *this_frame) after the switch to storing the frame ID, instead of the frame base, in the frame object. */ - /* FIXME: cagney/2002-12-18: Instead of this hack, should only - store the frame ID in PREV_FRAME. */ - /* FIXME: cagney/2003-04-04: Once ->frame is eliminated, this - assignment can go. */ - prev->frame = prev->id.base; - /* Link it in. */ this_frame->prev = prev; @@ -1682,13 +1673,7 @@ find_frame_sal (struct frame_info *frame, struct symtab_and_line *sal) CORE_ADDR get_frame_base (struct frame_info *fi) { - if (!fi->id_p) - { - /* HACK: Force the ID code to (indirectly) initialize the - ->frame pointer. */ - get_frame_id (fi); - } - return fi->frame; + return get_frame_id (fi).base; } /* High-level offsets into the frame. Used by the debug info. */ @@ -1812,7 +1797,7 @@ void deprecated_update_frame_base_hack (struct frame_info *frame, CORE_ADDR base) { /* See comment in "frame.h". */ - frame->frame = base; + frame->id.base = base; } void diff --git a/gdb/frame.h b/gdb/frame.h index e352ebca05b..a03e571c3ec 100644 --- a/gdb/frame.h +++ b/gdb/frame.h @@ -337,12 +337,6 @@ extern void frame_pop (struct frame_info *frame); struct frame_info { - /* Nominal address of the frame described. See comments at - get_frame_base() about what this means outside the *FRAME* - macros; in the *FRAME* macros, it can mean whatever makes most - sense for this machine. */ - CORE_ADDR frame; - /* Address at which execution is occurring in this frame. For the innermost frame, it's the current pc. For other frames, it is a pc saved in the next frame. */ -- 2.30.2