This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [rfa/dwarf/doc] Inter-compilation-unit reference support for partial DIEs
- From: Daniel Jacobowitz <drow at false dot org>
- To: gdb-patches at sources dot redhat dot com, jimb at redhat dot com, ezannoni at redhat dot com
- Date: Thu, 15 Jul 2004 14:44:31 -0400
- Subject: Re: [rfa/dwarf/doc] Inter-compilation-unit reference support for partial DIEs
- References: <20040420170855.GA31548@nevyn.them.org> <20040617034201.GD23443@nevyn.them.org>
Three month ping.
On Wed, Jun 16, 2004 at 11:42:02PM -0400, Daniel Jacobowitz wrote:
> Two month ping.
>
> Retested on i686-pc-linux-gnu, no regressions. To my surprise the
> patch still applies and works after Joel's psymtab changes.
>
> I think his approach creates a lot of unnecessary psymtabs; I'll have a
> closer look at that when I prepare the next patch in this series.
> They're only sort of unnecessary now, in that we get a psymtab for each
> instance of an included header; when used with inter-CU references they
> well be completely unnecessary, because we'll have real psymtabs. So
> there should be a way to detect that a psymtab containing all the
> information of the pseudo-psymtab already exists.
>
> On Tue, Apr 20, 2004 at 01:08:55PM -0400, Daniel Jacobowitz wrote:
> > Dwarf changes OK? Doc changes OK? Comments/suggestions?
>
> > 2004-04-20 Daniel Jacobowitz <drow@mvista.com>
> >
> > * Makefile.in (dwarf2read.o): Update dependencies.
> > * dwarf2read.c: Include "splay-tree.h", "command.h", and
> > "gdbcmd.h".
> > (struct dwarf2_per_objfile): Add cu_tree and read_in_chain.
> > (struct dwarf2_cu): Add read_in_chain, per_cu, last_used,
> > mark, and has_form_ref_addr.
> > (struct dwarf2_per_cu_data): New.
> > (dwarf2_max_cache_age): New.
> > (dwarf2_build_psymtabs_hard): Free cached compilation units
> > after loading. Create and manage the cu_tree.
> > (psymtab_to_symtab_1): Initialize cu.
> > (dwarf2_read_abbrevs): Set has_form_ref_addr.
> > (find_partial_die): Use dwarf2_find_containing_comp_unit
> > and load_comp_unit.
> > (free_stack_comp_unit): Update comments. Clear the per-cu
> > pointer. Handle aging.
> > (dwarf2_find_containing_comp_unit, free_cached_comp_units)
> > (age_cached_comp_units, free_one_cached_comp_unit)
> > (dwarf2_mark, dwarf2_clear_marks, splay_tree_obstack_allocate)
> > (create_comp_unit_tree, load_comp_unit, set_dwarf2_cmdlist)
> > (show_dwarf2_cmdlist, set_dwarf2_cmd, show_dwarf2_cmd): New.
> > (_initialize_dwarf2_read): Provide "maint set dwarf2 max-cache-age"
> > and "maint show dwarf2 max-cache-age".
> > * gdbcmd.h (maintenance_set_cmdlist, maintenance_show_cmdlist): New
> > externs.
> > * maint.c (maintenance_set_cmdlist, maintenance_show_cmdlist): Make
> > global.
> >
> > 2004-04-20 Daniel Jacobowitz <drow@mvista.com>
> >
> > * gdb.texinfo (Maintenance Commands): Document "maint set dwarf2
> > max-cache-age" and "maint show dwarf2 max-cache-age".
>
> --
> Daniel Jacobowitz
>
--
Daniel Jacobowitz