mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-26 17:18:55 +00:00
Index: ChangeLog
2003-03-23 Andrew Cagney <cagney@redhat.com> * gdbarch.sh (DEPRECATED_FRAME_CHAIN): Replace FRAME_CHAIN. (DEPRECATED_FRAME_CHAIN_VALID): Replace FRAME_CHAIN_VALID. * gdbarch.h, gdbarch.c: Regenerate. * valops.c (hand_function_call): Update. * objfiles.h (DEPRECATED_FRAME_CHAIN_VALID): Update. * frame.c (legacy_saved_regs_this_id): Update. (legacy_get_prev_frame, get_prev_frame, legacy_frame_p): Update. * dummy-frame.h: Update. * config/sparc/tm-sparc.h (DEPRECATED_FRAME_CHAIN): Update. * config/pa/tm-hppa.h (DEPRECATED_FRAME_CHAIN_VALID): Update. * config/m68k/tm-vx68.h (DEPRECATED_FRAME_CHAIN): Update. * config/m68k/tm-os68k.h (DEPRECATED_FRAME_CHAIN): Update. * config/m68k/tm-sun3.h: Update. * blockframe.c (inside_main_func, frame_chain_valid): Update. * xstormy16-tdep.c (xstormy16_gdbarch_init): Update. * x86-64-tdep.c (x86_64_init_abi): Update. * vax-tdep.c (vax_gdbarch_init): Update. * v850-tdep.c (v850_gdbarch_init): Update. * sparc-tdep.c (sparc_frame_chain, sparc_gdbarch_init): Update. * sh-tdep.c (sh_gdbarch_init): Update. * s390-tdep.c (s390_gdbarch_init): Update. * rs6000-tdep.c (rs6000_frame_saved_pc): Update. (rs6000_gdbarch_init, rs6000_frame_saved_pc): Update. (frame_get_saved_regs): Update. * ppc-linux-tdep.c (ppc_linux_init_abi): Update. * ns32k-tdep.c (ns32k_gdbarch_init): Update. * mn10300-tdep.c (mn10300_gdbarch_init): Update. * mips-tdep.c (mips_gdbarch_init): Update. * mcore-tdep.c (mcore_gdbarch_init): Update. * m68k-tdep.c (m68k_gdbarch_init): Update. * m68hc11-tdep.c (m68hc11_gdbarch_init): Update. * ia64-tdep.c (ia64_gdbarch_init): Update. * i386-tdep.c (i386_frame_num_args, i386_gdbarch_init): Update. * i386-interix-tdep.c (i386_interix_init_abi): Update. (i386_interix_back_one_frame): Update. * hppa-tdep.c (hppa_gdbarch_init): Update. (hppa_init_extra_frame_info): Update. * h8300-tdep.c (h8300_gdbarch_init): Update. * frv-tdep.c (frv_gdbarch_init): Update. * cris-tdep.c (cris_gdbarch_init): Update. * avr-tdep.c (avr_gdbarch_init): Update. * arm-tdep.c (arm_gdbarch_init): Update. * alpha-tdep.c (alpha_gdbarch_init): Update. Index: doc/ChangeLog 2003-03-23 Andrew Cagney <cagney@redhat.com> * gdbint.texinfo (Algorithms, Target Architecture Definition): Deprecate FRAME_CHAIN and FRAME_CHAIN_VALID.
This commit is contained in:
@@ -65,14 +65,15 @@ struct htab;
|
||||
confused. However, we almost always have debugging information
|
||||
available for main().
|
||||
|
||||
These variables are used to save the range of PC values which are valid
|
||||
within the main() function and within the function containing the process
|
||||
entry point. If we always consider the frame for main() as the outermost
|
||||
frame when debugging user code, and the frame for the process entry
|
||||
point function as the outermost frame when debugging startup code, then
|
||||
all we have to do is have FRAME_CHAIN_VALID return false whenever a
|
||||
frame's current PC is within the range specified by these variables.
|
||||
In essence, we set "ceilings" in the frame chain beyond which we will
|
||||
These variables are used to save the range of PC values which are
|
||||
valid within the main() function and within the function containing
|
||||
the process entry point. If we always consider the frame for
|
||||
main() as the outermost frame when debugging user code, and the
|
||||
frame for the process entry point function as the outermost frame
|
||||
when debugging startup code, then all we have to do is have
|
||||
DEPRECATED_FRAME_CHAIN_VALID return false whenever a frame's
|
||||
current PC is within the range specified by these variables. In
|
||||
essence, we set "ceilings" in the frame chain beyond which we will
|
||||
not proceed when following the frame chain back up the stack.
|
||||
|
||||
A nice side effect is that we can still debug startup code without
|
||||
@@ -83,9 +84,10 @@ struct htab;
|
||||
information but we do have usable information for main(), backtraces
|
||||
from user code don't go wandering off into the startup code.
|
||||
|
||||
To use this method, define your FRAME_CHAIN_VALID macro like:
|
||||
To use this method, define your DEPRECATED_FRAME_CHAIN_VALID macro
|
||||
like:
|
||||
|
||||
#define FRAME_CHAIN_VALID(chain, thisframe) \
|
||||
#define DEPRECATED_FRAME_CHAIN_VALID(chain, thisframe) \
|
||||
(chain != 0 \
|
||||
&& !(inside_main_func ((thisframe)->pc)) \
|
||||
&& !(inside_entry_func ((thisframe)->pc)))
|
||||
|
||||
Reference in New Issue
Block a user