This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [RFA] DWARF multiple comp unit header support - Revision - Part 1
- From: Jim Blandy <jimb at redhat dot com>
- To: Petr Sorfa <petrs at caldera dot com>
- Cc: "gdb-patches at sources dot redhat dot com" <gdb-patches at sources dot redhat dot com>
- Date: 15 Aug 2002 16:54:32 -0500
- Subject: Re: [RFA] DWARF multiple comp unit header support - Revision - Part 1
- References: <3D2F0E4F.DDCC4DE9@caldera.com>
This looks good. Some comments:
Petr Sorfa <petrs@caldera.com> writes:
> 2002-07-12 Petr Sorfa (petrs@caldera.com)
>
> * dwarf2read.c (ABBREV_HASH_SIZE): moved definition
> forward in the code to be defined before
> struct comp_unit_head.
> (comp_unit_head): Added several new members,
> some are being used with this patch, some not.
> offset - Offset of the cu_header in .debug_info
> begin_offset - Base offset of cu_header into program
> next - Next comp unit head in program
> dwarf2_abbrevs - abbreviation tables associated with
> comp unit header.
The members must be documented in the code, and thus need only be
named in the ChangeLog entry.
> *************** struct comp_unit_head
> *** 174,179 ****
> --- 179,194 ----
> unsigned int offset_size; /* size of file offsets; either 4 or 8 */
> unsigned int initial_length_size; /* size of the length field; either
> 4 or 12 */
> +
> + /* New information for the comp unit head so as to keep a list
> + of available ones for a program. */
> + unsigned int offset; /* Offset of the cu_header in .debug_info */
> + char *base_offset; /* Base offset after cu_header into program */
> + char *begin_offset; /* Base offset of cu_header into program */
> + struct comp_unit_head *next; /* Next comp unit head in program */
> +
> + struct abbrev_info *dwarf2_abbrevs[ABBREV_HASH_SIZE]; /* DWARF abbrev
> + table */
> };
>
> /* The line number information for a compilation unit (found in the
These comments need to be much more expansive. It's very important
that data structures be clearly explained. How is "Base offset
*after* cu_header into program" different from "Base offset *of*
cu_header into program"?
Have you compared test suite results with and without this patch?