aboutsummaryrefslogtreecommitdiff
path: root/gdb/objfiles.h
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2003-09-12 18:40:18 +0000
committerAndrew Cagney <cagney@redhat.com>2003-09-12 18:40:18 +0000
commit627b3ba2d386befaf2d1bd97bd780ac1218dd399 (patch)
tree506fc255ee49268770bd8a356538f907eec76279 /gdb/objfiles.h
parentb0abbc58f0daefaf286d6a008820fef5f69e5353 (diff)
downloadgdb-627b3ba2d386befaf2d1bd97bd780ac1218dd399.zip
gdb-627b3ba2d386befaf2d1bd97bd780ac1218dd399.tar.gz
gdb-627b3ba2d386befaf2d1bd97bd780ac1218dd399.tar.bz2
2003-09-12 Andrew Cagney <cagney@redhat.com>
* objfiles.h (struct entry_info): Deprecate "entry_file_lowpc" and "entry_file_highpc". Update comments. * defs.h (deprecated_inside_entry_file): Rename "inside_entry_file". * blockframe.c (deprecated_inside_entry_file): Rename "inside_entry_file". * frame.c (get_prev_frame): Update. Use if 0 instead of #if 0. * vax-tdep.c (vax_frame_chain): Update. * sh64-tdep.c (sh64_frame_chain): Update. * sh-tdep.c (sh_frame_chain): Update. * rs6000-tdep.c (rs6000_frame_chain): Update. * ns32k-tdep.c (ns32k_frame_chain): Update. * mips-tdep.c (mips_frame_chain): Update. * m68hc11-tdep.c (m68hc11_frame_this_id): Update. * m32r-tdep.c (m32r_frame_this_id): Update. * i386-interix-tdep.c (i386_interix_frame_chain_valid): Update. * frv-tdep.c (frv_frame_this_id): Update. * d10v-tdep.c (d10v_frame_this_id): Update. * cris-tdep.c (cris_frame_chain): Update. * blockframe.c (legacy_frame_chain_valid): Update. * avr-tdep.c (avr_frame_this_id): Update. * arm-tdep.c (arm_prologue_this_id): Update. * alpha-tdep.c (alpha_heuristic_frame_this_id): Update. * objfiles.c (objfile_relocate): Update. * mipsread.c (mipscoff_symfile_read): Update. (mipscoff_symfile_read): Update. * mdebugread.c (parse_partial_symbols): Update. * dwarfread.c (read_file_scope): Update. * dwarf2read.c (read_file_scope): Update. * dbxread.c (read_dbx_symtab): Update. (read_dbx_symtab): Update. * coffread.c (complete_symtab): Update.
Diffstat (limited to 'gdb/objfiles.h')
-rw-r--r--gdb/objfiles.h34
1 files changed, 24 insertions, 10 deletions
diff --git a/gdb/objfiles.h b/gdb/objfiles.h
index c52b95f..f94afd1 100644
--- a/gdb/objfiles.h
+++ b/gdb/objfiles.h
@@ -43,14 +43,28 @@ struct symtab;
to the user executable's recorded entry point, as if the call had been made
directly by the kernel.
- The traditional gdb method of using this info is to use the recorded entry
- point to set the variables entry_file_lowpc and entry_file_highpc from
- the debugging information, where these values are the starting address
- (inclusive) and ending address (exclusive) of the instruction space in the
- executable which correspond to the "startup file", I.E. crt0.o in most
- cases. This file is assumed to be a startup file and frames with pc's
- inside it are treated as nonexistent. Setting these variables is necessary
- so that backtraces do not fly off the bottom of the stack.
+ The traditional gdb method of using this info is to use the
+ recorded entry point to set the variables
+ deprecated_entry_file_lowpc and deprecated_entry_file_highpc from
+ the debugging information, where these values are the starting
+ address (inclusive) and ending address (exclusive) of the
+ instruction space in the executable which correspond to the
+ "startup file", I.E. crt0.o in most cases. This file is assumed to
+ be a startup file and frames with pc's inside it are treated as
+ nonexistent. Setting these variables is necessary so that
+ backtraces do not fly off the bottom of the stack.
+
+ NOTE: cagney/2003-09-09: It turns out that this "traditional"
+ method doesn't work. Corinna writes: ``It turns out that the call
+ to deprecated_inside_entry_file destroys a meaningful backtrace
+ under some conditions. E. g. the backtrace tests in the asm-source
+ testcase are broken for some targets. In this test the functions
+ are all implemented as part of one file and the testcase is not
+ necessarily linked with a start file (depending on the target).
+ What happens is, that the first frame is printed normaly and
+ following frames are treated as being inside the enttry file then.
+ This way, only the #0 frame is printed in the backtrace output.''
+ Ref "frame.c" "NOTE: vinschen/2003-04-01".
Gdb also supports an alternate method to avoid running off the bottom
of the stack.
@@ -116,8 +130,8 @@ struct entry_info
/* Start (inclusive) and end (exclusive) of object file containing the
entry point. */
- CORE_ADDR entry_file_lowpc;
- CORE_ADDR entry_file_highpc;
+ CORE_ADDR deprecated_entry_file_lowpc;
+ CORE_ADDR deprecated_entry_file_highpc;
/* Start (inclusive) and end (exclusive) of the user code main() function. */