diff options
author | Jim Kingdon <jkingdon@engr.sgi.com> | 1993-05-26 03:27:32 +0000 |
---|---|---|
committer | Jim Kingdon <jkingdon@engr.sgi.com> | 1993-05-26 03:27:32 +0000 |
commit | b9298844e505d8bad226fa7be2a625263eaa7da6 (patch) | |
tree | 938dddddb320a2a9f0f37de81addf05dc0c20bdb /gdb/symtab.h | |
parent | b64d5e491ac1c828ac4aab59b239077a339e42c9 (diff) | |
download | gdb-b9298844e505d8bad226fa7be2a625263eaa7da6.zip gdb-b9298844e505d8bad226fa7be2a625263eaa7da6.tar.gz gdb-b9298844e505d8bad226fa7be2a625263eaa7da6.tar.bz2 |
* source.c (line_info): If --fullname, display the source.
(identify_source_line), callers: Take pc as argument, rather than
assuming innermost frame (emacs doesn't use this, so no one ever
noticed).
* symtab.h: Declare frame_file_full_name.
* main.c: Don't.
Diffstat (limited to 'gdb/symtab.h')
-rw-r--r-- | gdb/symtab.h | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/gdb/symtab.h b/gdb/symtab.h index 03d5e7f..c8c311d 100644 --- a/gdb/symtab.h +++ b/gdb/symtab.h @@ -469,7 +469,8 @@ enum address_class /* Value is in specified register. Just like LOC_REGPARM except the register holds the address of the argument instead of the argument itself. This is currently used for the passing of structs and unions - on sparc and hppa. */ + on sparc and hppa. It is also used for call by reference where the + address is in a register, at least by mipsread.c. */ LOC_REGPARM_ADDR, @@ -618,6 +619,23 @@ struct linetable_entry CORE_ADDR pc; }; +/* The order of entries in the linetable is significant. + + It should generally be in ascending line number order. Line table + entries for a function at lines 10-40 should come before entries + for a function at lines 50-70. + + A for statement looks like this + + 10 0x100 - for the init/test part of a for stmt. + 20 0x200 + 30 0x300 + 10 0x400 - for the increment part of a for stmt. + + FIXME: this description is incomplete. coffread.c is said to get + the linetable order wrong (would arrange_linenos from xcoffread.c + work for normal COFF too?). */ + struct linetable { int nitems; @@ -1041,8 +1059,10 @@ symbol_file_add PARAMS ((char *, int, CORE_ADDR, int, int, int)); /* source.c */ +extern int frame_file_full_name; /* in stack.c */ + extern int -identify_source_line PARAMS ((struct symtab *, int, int)); +identify_source_line PARAMS ((struct symtab *, int, int, CORE_ADDR)); extern void print_source_lines PARAMS ((struct symtab *, int, int, int)); |