* coffread.c (find_linenos): Use LINESZ not sizeof (struct lineno).
* coffread.c (end_symtab): Initialize language, dirname, and fullname fields.
This commit is contained in:
parent
98885d766e
commit
b203fc1803
3 changed files with 69 additions and 6 deletions
|
@ -1,3 +1,57 @@
|
|||
Sat Apr 20 21:42:47 1991 Jim Kingdon (kingdon at cygint.cygnus.com)
|
||||
|
||||
* symtab.c (various): Change error return of find_line_common to -1.
|
||||
|
||||
* coffread.c (find_linenos): Use LINESZ not sizeof (struct lineno).
|
||||
|
||||
* coffread.c (end_symtab): Initialize language, dirname, and
|
||||
fullname fields.
|
||||
|
||||
Fri Apr 19 18:18:31 1991 Jim Kingdon (kingdon at cygint.cygnus.com)
|
||||
|
||||
* mips-tdep.c (mips_frame_chain): Don't chain if saved_pc == 0.
|
||||
|
||||
* stddef.h (size_t): Let either _SIZE_T or _SIZE_T_ guard it.
|
||||
|
||||
* mipsread.c (parse_symbol): Set startup_file_{start,end} if
|
||||
entry_point is in current file.
|
||||
|
||||
* findvar.c (read_register_gen): Add "target byte-order" comment.
|
||||
|
||||
Wed Apr 17 17:09:48 1991 Jim Kingdon (kingdon at cygint.cygnus.com)
|
||||
|
||||
* i386-tdep.c (i386_get_frame_setup): Use SWAP_TARGET_AND_HOST
|
||||
before returning locals or slocals.
|
||||
|
||||
* i386-tdep.c (i386_follow_jump): Do not add data16 to pos in
|
||||
call to codestream_seek; add one to pos if (and only if)
|
||||
we are dealing with a jump with data16 == 1 (i.e. 0x66, 0xe9).
|
||||
|
||||
Mon Apr 15 12:04:32 1991 Jim Kingdon (kingdon at cygint.cygnus.com)
|
||||
|
||||
* valops.c (call_function_by_hand): Put dummy1 in target order
|
||||
before FIX_CALL_DUMMY.
|
||||
|
||||
* tm-i386v.h (FIX_CALL_DUMMY): Don't depend on host byte order.
|
||||
|
||||
Sun Apr 14 11:55:19 1991 Jim Kingdon (kingdon at cygint.cygnus.com)
|
||||
|
||||
* valops.c (push_word): Add SWAP_TARGET_AND_HOST.
|
||||
|
||||
* remote.c (remote_open): Send '+' before calling putpkt().
|
||||
|
||||
* tm-i386v.h (REGISTER_VIRTUAL_TYPE): Return pointer to void,
|
||||
not int, for pc, fp, and sp.
|
||||
|
||||
* remote.c (remote_open): Call start_remote after putpkt("?");
|
||||
infrun.c (start_remote): Also call wait_for_inferior & normal_stop.
|
||||
|
||||
Sat Apr 13 22:11:42 1991 Jim Kingdon (kingdon at spiff.cygnus.com)
|
||||
|
||||
* exec.c: Include <ctype.h>.
|
||||
|
||||
* sun3-xdep.c (fetch_core_registers): Add #ifdef FP0_REGNUM.
|
||||
|
||||
Fri Apr 19 09:36:50 1991 Jim Kingdon (kingdon at cygint.cygnus.com)
|
||||
|
||||
* tm-68k.h (NUM_REGS): Conditionalize on TARGET_SUN3 not sun.
|
||||
|
|
|
@ -512,6 +512,7 @@ end_symtab ()
|
|||
symtab->blockvector = blockvector;
|
||||
symtab->free_code = free_linetable;
|
||||
symtab->filename = last_source_file;
|
||||
symtab->dirname = NULL;
|
||||
lv = line_vector;
|
||||
lv->nitems = line_vector_index;
|
||||
symtab->linetable = (struct linetable *)
|
||||
|
@ -520,6 +521,9 @@ end_symtab ()
|
|||
symtab->nlines = 0;
|
||||
symtab->line_charpos = 0;
|
||||
|
||||
symtab->language = language_unknown;
|
||||
symtab->fullname = NULL;
|
||||
|
||||
#ifdef TDESC
|
||||
symtab->coffsem = last_coffsem;
|
||||
symtab->coffsyn = last_coffsyn;
|
||||
|
@ -624,7 +628,12 @@ find_linenos (abfd, asect, vpinfo)
|
|||
|
||||
if (count == 0)
|
||||
return;
|
||||
size = count * sizeof (struct lineno);
|
||||
#if !defined (LINESZ)
|
||||
/* Just in case, you never know what to expect from those
|
||||
COFF header files. */
|
||||
#define LINESZ (sizeof (struct lineno))
|
||||
#endif /* No LINESZ. */
|
||||
size = count * LINESZ;
|
||||
|
||||
info = (struct coff_symfile_info *)vpinfo;
|
||||
/* WARNING WILL ROBINSON! ACCESSING BFD-PRIVATE DATA HERE! FIXME! */
|
||||
|
|
10
gdb/symtab.c
10
gdb/symtab.c
|
@ -1371,7 +1371,7 @@ find_line_pc (symtab, line)
|
|||
return 0;
|
||||
l = LINETABLE (symtab);
|
||||
ind = find_line_common(l, line, &dummy);
|
||||
return ind ? l->item[ind].pc : 0;
|
||||
return (ind >= 0) ? l->item[ind].pc : 0;
|
||||
}
|
||||
|
||||
/* Find the range of pc values in a line.
|
||||
|
@ -1395,7 +1395,7 @@ find_line_pc_range (symtab, thisline, startptr, endptr)
|
|||
|
||||
l = LINETABLE (symtab);
|
||||
ind = find_line_common (l, thisline, &exact_match);
|
||||
if (ind)
|
||||
if (ind >= 0)
|
||||
{
|
||||
*startptr = l->item[ind].pc;
|
||||
/* If we have not seen an entry for the specified line,
|
||||
|
@ -1418,7 +1418,7 @@ find_line_pc_range (symtab, thisline, startptr, endptr)
|
|||
|
||||
/* Given a line table and a line number, return the index into the line
|
||||
table for the pc of the nearest line whose number is >= the specified one.
|
||||
Return 0 if none is found. The value is never zero is it is an index.
|
||||
Return -1 if none is found. The value is >= 0 if it is an index.
|
||||
|
||||
Set *EXACT_MATCH nonzero if the value returned is an exact match. */
|
||||
|
||||
|
@ -1435,11 +1435,11 @@ find_line_common (l, lineno, exact_match)
|
|||
or 0 if none has been seen so far.
|
||||
BEST_INDEX identifies the item for it. */
|
||||
|
||||
int best_index = 0;
|
||||
int best_index = -1;
|
||||
int best = 0;
|
||||
|
||||
if (lineno <= 0)
|
||||
return 0;
|
||||
return -1;
|
||||
|
||||
len = l->nitems;
|
||||
for (i = 0; i < len; i++)
|
||||
|
|
Loading…
Reference in a new issue