* dwarf2read.c (dwarf2_build_psymtabs_hard): Do not adjust the

address range of a compilation unit without children.

	* mdebugread.c (parse_partial_symbols):  Fix handling of stabs
	continuations, use xmalloc and xrealloc.
This commit is contained in:
Peter Schauer
1998-10-11 19:54:57 +00:00
parent c6d28b22da
commit b0a5badb69
3 changed files with 22 additions and 11 deletions

View File

@ -1,3 +1,11 @@
Sun Oct 11 12:08:07 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
* dwarf2read.c (dwarf2_build_psymtabs_hard): Do not adjust the
address range of a compilation unit without children.
* mdebugread.c (parse_partial_symbols): Fix handling of stabs
continuations, use xmalloc and xrealloc.
Fri Oct 9 18:14:43 1998 Mark Alexander <marka@cygnus.com> Fri Oct 9 18:14:43 1998 Mark Alexander <marka@cygnus.com>
* rs6000-tdep.c: Don't include tm.h twice. * rs6000-tdep.c: Don't include tm.h twice.

View File

@ -1002,15 +1002,17 @@ dwarf2_build_psymtabs_hard (objfile, section_offsets, mainline)
If so, read the rest of the partial symbols from this comp unit. If so, read the rest of the partial symbols from this comp unit.
If not, there's no more debug_info for this comp unit. */ If not, there's no more debug_info for this comp unit. */
if (comp_unit_die.has_children) if (comp_unit_die.has_children)
info_ptr = scan_partial_symbols (info_ptr, objfile, &lowpc, &highpc);
/* If the compilation unit didn't have an explicit address range,
then use the information extracted from its child dies. */
if (!comp_unit_has_pc_info)
{ {
comp_unit_die.lowpc = lowpc; info_ptr = scan_partial_symbols (info_ptr, objfile, &lowpc, &highpc);
comp_unit_die.highpc = highpc;
} /* If the compilation unit didn't have an explicit address range,
then use the information extracted from its child dies. */
if (!comp_unit_has_pc_info)
{
comp_unit_die.lowpc = lowpc;
comp_unit_die.highpc = highpc;
}
}
pst->textlow = comp_unit_die.lowpc + baseaddr; pst->textlow = comp_unit_die.lowpc + baseaddr;
pst->texthigh = comp_unit_die.highpc + baseaddr; pst->texthigh = comp_unit_die.highpc + baseaddr;

View File

@ -1,5 +1,5 @@
/* Read a symbol table in ECOFF format (Third-Eye). /* Read a symbol table in ECOFF format (Third-Eye).
Copyright 1986, 87, 89, 90, 91, 92, 93, 94, 95, 96, 1997 Copyright 1986, 87, 89, 90, 91, 92, 93, 94, 95, 96, 97, 1998
Free Software Foundation, Inc. Free Software Foundation, Inc.
Original version contributed by Alessandro Forin (af@cs.cmu.edu) at Original version contributed by Alessandro Forin (af@cs.cmu.edu) at
CMU. Major work by Per Bothner, John Gilmore and Ian Lance Taylor CMU. Major work by Per Bothner, John Gilmore and Ian Lance Taylor
@ -2749,11 +2749,12 @@ parse_partial_symbols (objfile, section_offsets)
/* Concatinate stabstring2 with stabstring1 */ /* Concatinate stabstring2 with stabstring1 */
if (stabstring if (stabstring
&& stabstring != debug_info->ss + fh->issBase + sh.iss) && stabstring != debug_info->ss + fh->issBase + sh.iss)
stabstring = realloc (stabstring, len + len2 + 1); stabstring = xrealloc (stabstring, len + len2 + 1);
else else
stabstring = malloc (len + len2 + 1); stabstring = xmalloc (len + len2 + 1);
strcpy (stabstring, stabstring1); strcpy (stabstring, stabstring1);
strcpy (stabstring + len, stabstring2); strcpy (stabstring + len, stabstring2);
len += len2;
} }
#define SET_NAMESTRING() \ #define SET_NAMESTRING() \