This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[commit] frame_chain_invalid() -> legacy_frame_chain_invalid()
- From: Andrew Cagney <ac131313 at redhat dot com>
- To: gdb-patches at sources dot redhat dot com
- Date: Sun, 06 Apr 2003 14:39:11 -0400
- Subject: [commit] frame_chain_invalid() -> legacy_frame_chain_invalid()
Hello,
This is a strong hint that the frame_chain_valid() function, that was
once so critical to gdb, is almost no more.
committed,
Andrew
2003-04-06 Andrew Cagney <cagney at redhat dot com>
* frame.h (legacy_frame_chain_valid): Rename frame_chain_valid.
Update comment.
* frame.c (legacy_saved_regs_this_id): Update.
(legacy_get_prev_frame): Update.
* xstormy16-tdep.c: Update comment.
* sparc-tdep.c (sparc_frame_chain): Update comment.
* blockframe.c (legacy_frame_chain_valid): Update.
Index: blockframe.c
===================================================================
RCS file: /cvs/src/src/gdb/blockframe.c,v
retrieving revision 1.66
diff -u -r1.66 blockframe.c
--- blockframe.c 5 Apr 2003 18:54:38 -0000 1.66
+++ blockframe.c 6 Apr 2003 18:34:12 -0000
@@ -554,12 +554,12 @@
&& (pc) <= (CALL_DUMMY_ADDRESS () + DECR_PC_AFTER_BREAK));
}
-/* Function: frame_chain_valid
- Returns true for a user frame or a call_function_by_hand dummy frame,
- and false for the CRT0 start-up frame. Purpose is to terminate backtrace. */
+/* Returns true for a user frame or a call_function_by_hand dummy
+ frame, and false for the CRT0 start-up frame. Purpose is to
+ terminate backtrace. */
int
-frame_chain_valid (CORE_ADDR fp, struct frame_info *fi)
+legacy_frame_chain_valid (CORE_ADDR fp, struct frame_info *fi)
{
/* Don't prune CALL_DUMMY frames. */
if (DEPRECATED_USE_GENERIC_DUMMY_FRAMES
Index: frame.c
===================================================================
RCS file: /cvs/src/src/gdb/frame.c,v
retrieving revision 1.100
diff -u -r1.100 frame.c
--- frame.c 6 Apr 2003 01:13:58 -0000 1.100
+++ frame.c 6 Apr 2003 18:34:13 -0000
@@ -821,7 +821,7 @@
gdb_assert (DEPRECATED_FRAME_CHAIN_P ());
base = DEPRECATED_FRAME_CHAIN (next_frame);
- if (!frame_chain_valid (base, next_frame))
+ if (!legacy_frame_chain_valid (base, next_frame))
return;
}
if (base == 0)
@@ -1246,7 +1246,7 @@
gdb_assert (DEPRECATED_FRAME_CHAIN_P ());
address = DEPRECATED_FRAME_CHAIN (this_frame);
- if (!frame_chain_valid (address, this_frame))
+ if (!legacy_frame_chain_valid (address, this_frame))
return 0;
}
if (address == 0)
Index: frame.h
===================================================================
RCS file: /cvs/src/src/gdb/frame.h,v
retrieving revision 1.84
diff -u -r1.84 frame.h
--- frame.h 6 Apr 2003 01:13:59 -0000 1.84
+++ frame.h 6 Apr 2003 18:34:13 -0000
@@ -455,10 +455,14 @@
extern void *frame_obstack_zalloc (unsigned long size);
#define FRAME_OBSTACK_ZALLOC(TYPE) ((TYPE *) frame_obstack_zalloc (sizeof (TYPE)))
-/* If DEPRECATED_FRAME_CHAIN_VALID returns zero it means that the
- given frame is the outermost one and has no caller. */
+/* If legacy_frame_chain_valid() returns zero it means that the given
+ frame is the outermost one and has no caller.
-extern int frame_chain_valid (CORE_ADDR, struct frame_info *);
+ This method has been superseeded by the per-architecture
+ frame_unwind_pc() (returns 0 to indicate an invalid return address)
+ and per-frame this_id() (returns a NULL frame ID to indicate an
+ invalid frame). */
+extern int legacy_frame_chain_valid (CORE_ADDR, struct frame_info *);
extern void generic_save_dummy_frame_tos (CORE_ADDR sp);
Index: sparc-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/sparc-tdep.c,v
retrieving revision 1.86
diff -u -r1.86 sparc-tdep.c
--- sparc-tdep.c 6 Apr 2003 01:13:59 -0000 1.86
+++ sparc-tdep.c 6 Apr 2003 18:34:14 -0000
@@ -437,16 +437,17 @@
about the chain value. If it really is zero, we detect it later
in sparc_init_prev_frame.
- Note: kevinb/2003-02-18: The constant 1 used to be returned
- here, but, after some recent changes to frame_chain_valid(),
- this value is no longer suitable for causing frame_chain_valid()
- to "not worry about the chain value." The constant ~0 (i.e,
- 0xfff...) causes the failing test in frame_chain_valid() to
- succeed thus preserving the "not worry" property. I had considered
- using something like ``get_frame_base (frame) + 1''. However, I think
- a constant value is better, because when debugging this problem,
- I knew that something funny was going on as soon as I saw the
- constant 1 being used as the frame chain elsewhere in GDB. */
+ Note: kevinb/2003-02-18: The constant 1 used to be returned here,
+ but, after some recent changes to legacy_frame_chain_valid(),
+ this value is no longer suitable for causing
+ legacy_frame_chain_valid() to "not worry about the chain value."
+ The constant ~0 (i.e, 0xfff...) causes the failing test in
+ legacy_frame_chain_valid() to succeed thus preserving the "not
+ worry" property. I had considered using something like
+ ``get_frame_base (frame) + 1''. However, I think a constant
+ value is better, because when debugging this problem, I knew that
+ something funny was going on as soon as I saw the constant 1
+ being used as the frame chain elsewhere in GDB. */
return ~ (CORE_ADDR) 0;
}
Index: xstormy16-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/xstormy16-tdep.c,v
retrieving revision 1.44
diff -u -r1.44 xstormy16-tdep.c
--- xstormy16-tdep.c 1 Apr 2003 17:17:29 -0000 1.44
+++ xstormy16-tdep.c 6 Apr 2003 18:34:15 -0000
@@ -748,9 +748,8 @@
/* Function: xstormy16_frame_saved_pc
Returns the return address for the selected frame.
- Called by frame_info, frame_chain_valid, and sometimes by
- get_prev_frame.
-*/
+ Called by frame_info, legacy_frame_chain_valid, and sometimes by
+ get_prev_frame. */
static CORE_ADDR
xstormy16_frame_saved_pc (struct frame_info *fi)