This is the mail archive of the
insight@sources.redhat.com
mailing list for the Insight project.
[commit] selected_frame -> deprecated_selected_frame
- From: Andrew Cagney <ac131313 at redhat dot com>
- To: insight at sources dot redhat dot com
- Date: Sat, 30 Nov 2002 12:55:02 -0500
- Subject: [commit] selected_frame -> deprecated_selected_frame
FYI,
Keep insight building. There is now get_selected_frame() but that
throws an error when there isn't a frame.
(NB, there is also a bug lurking here. When the inferior has
stack/registers, GDB should always create a frame. It some times
doesn't - instead it throws an error. The fix is to catch the error and
create a fake frame.
While at it, I took the oportunity to clean up a few get_frame_pc()s and
find_frame_sal()s.
committed,
Andrew
2002-11-30 Andrew Cagney <ac131313@redhat.com>
* generic/gdbtk-stack.c: Replace selected_frame with
deprecated_selected_frame.
* generic/gdbtk-register.c: Ditto.
* generic/gdbtk-cmds.c (gdb_loc): Replace selected_frame with
deprecated_selected_frame. Use get_frame_pc and find_frame_sal.
Index: generic/gdbtk-cmds.c
===================================================================
RCS file: /cvs/src/src/gdb/gdbtk/generic/gdbtk-cmds.c,v
retrieving revision 1.62
diff -u -r1.62 gdbtk-cmds.c
--- generic/gdbtk-cmds.c 27 Nov 2002 19:09:17 -0000 1.62
+++ generic/gdbtk-cmds.c 30 Nov 2002 17:43:09 -0000
@@ -2260,7 +2260,8 @@
if (objc == 1)
{
- if (selected_frame && (selected_frame->pc != read_pc ()))
+ if (deprecated_selected_frame
+ && (get_frame_pc (deprecated_selected_frame) != read_pc ()))
{
/* Note - this next line is not correct on all architectures.
For a graphical debugger we really want to highlight the
@@ -2268,11 +2269,8 @@
Many architectures have the next instruction saved as the
pc on the stack, so what happens is the next instruction
is highlighted. FIXME */
- pc = selected_frame->pc;
- sal = find_pc_line (selected_frame->pc,
- selected_frame->next != NULL
- && !(get_frame_type (selected_frame->next) == SIGTRAMP_FRAME)
- && !(get_frame_type (selected_frame->next) == DUMMY_FRAME));
+ pc = get_frame_pc (deprecated_selected_frame);
+ find_frame_sal (deprecated_selected_frame, &sal);
}
else
{
Index: generic/gdbtk-register.c
===================================================================
RCS file: /cvs/src/src/gdb/gdbtk/generic/gdbtk-register.c,v
retrieving revision 1.11
diff -u -r1.11 gdbtk-register.c
--- generic/gdbtk-register.c 3 Aug 2002 16:22:07 -0000 1.11
+++ generic/gdbtk-register.c 30 Nov 2002 17:43:10 -0000
@@ -276,7 +276,7 @@
return;
}
- get_saved_register (raw_buffer, &optim, (CORE_ADDR *) NULL, selected_frame,
+ get_saved_register (raw_buffer, &optim, (CORE_ADDR *) NULL, deprecated_selected_frame,
regnum, (enum lval_type *) NULL);
if (optim)
{
@@ -426,7 +426,7 @@
{
char *raw_buffer = alloca (MAX_REGISTER_RAW_SIZE);
- if (!frame_register_read (selected_frame, regnum, raw_buffer))
+ if (!frame_register_read (deprecated_selected_frame, regnum, raw_buffer))
return;
if (memcmp (&old_regs[regnum * MAX_REGISTER_RAW_SIZE], raw_buffer,
Index: generic/gdbtk-stack.c
===================================================================
RCS file: /cvs/src/src/gdb/gdbtk/generic/gdbtk-stack.c,v
retrieving revision 1.13
diff -u -r1.13 gdbtk-stack.c
--- generic/gdbtk-stack.c 27 Nov 2002 15:29:54 -0000 1.13
+++ generic/gdbtk-stack.c 30 Nov 2002 17:43:10 -0000
@@ -95,13 +95,13 @@
}
Tcl_SetListObj (result_ptr->obj_ptr, 0, NULL);
- if (selected_frame == NULL)
+ if (deprecated_selected_frame == NULL)
return TCL_OK;
start = string_to_core_addr (Tcl_GetStringFromObj (objv[1], NULL));
end = string_to_core_addr (Tcl_GetStringFromObj (objv[2], NULL));
- block = get_frame_block (selected_frame, 0);
+ block = get_frame_block (deprecated_selected_frame, 0);
while (block != 0)
{
@@ -163,10 +163,10 @@
Tcl_SetListObj (result_ptr->obj_ptr, 0, NULL);
- if (selected_frame != NULL)
+ if (deprecated_selected_frame != NULL)
{
- block = get_frame_block (selected_frame, 0);
- pc = get_frame_pc (selected_frame);
+ block = get_frame_block (deprecated_selected_frame, 0);
+ pc = get_frame_pc (deprecated_selected_frame);
while (block != 0)
{
junk = 0;
@@ -309,10 +309,10 @@
else
{
/* Specified currently selected frame */
- if (selected_frame == NULL)
+ if (deprecated_selected_frame == NULL)
return TCL_OK;
- block = get_frame_block (selected_frame, 0);
+ block = get_frame_block (deprecated_selected_frame, 0);
}
while (block != 0)
@@ -377,7 +377,7 @@
char *start = NULL;
char *end = NULL;
- if (selected_frame == NULL)
+ if (deprecated_selected_frame == NULL)
{
xasprintf (&start, "%s", "");
xasprintf (&end, "%s", "");
@@ -385,7 +385,7 @@
else
{
struct block *block;
- block = get_frame_block (selected_frame, 0);
+ block = get_frame_block (deprecated_selected_frame, 0);
xasprintf (&start, "0x%s", paddr_nz (BLOCK_START (block)));
xasprintf (&end, "0x%s", paddr_nz (BLOCK_END (block)));
}
@@ -417,12 +417,13 @@
{
char *frame;
- if (selected_frame == NULL)
+ if (deprecated_selected_frame == NULL)
xasprintf (&frame, "%s","");
else
/* FIXME: cagney/2002-11-19: This should be using get_frame_id()
to identify the frame and *NOT* get_frame_base(). */
- xasprintf (&frame, "0x%s", paddr_nz (get_frame_base (selected_frame)));
+ xasprintf (&frame, "0x%s",
+ paddr_nz (get_frame_base (deprecated_selected_frame)));
Tcl_SetStringObj (result_ptr->obj_ptr, frame, -1);