From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28231 invoked by alias); 6 Nov 2002 15:34:38 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 28224 invoked from network); 6 Nov 2002 15:34:35 -0000 Received: from unknown (HELO sapphire.nj.caldera.com) (63.124.204.226) by sources.redhat.com with SMTP; 6 Nov 2002 15:34:35 -0000 Received: (from jlw@localhost) by sapphire.nj.caldera.com (8.9.3/UW7.1.1) id KAA12542; Wed, 6 Nov 2002 10:34:03 -0500 (EST) Date: Wed, 06 Nov 2002 07:34:00 -0000 From: John Wolfe Message-Id: <200211061534.KAA12542@sapphire.nj.caldera.com> To: jimb@redhat.com, jlw@caldera.com, drow@mvista.com Subject: Re: Petr Sorfa's Dwarf 2 changes Cc: ac131313@redhat.com, gdb@sources.redhat.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Content-MD5: XhFvjZyKAjuBxljIE+AIVQ== X-SW-Source: 2002-11/txt/msg00059.txt.bz2 > From: Daniel Jacobowitz > To: Jim Blandy , John Wolfe > Cc: Andrew Cagney , gdb@sources.redhat.com > Subject: Re: Petr Sorfa's Dwarf 2 changes > Message-ID: <20021104202641.GA7194@nevyn.them.org> > Mail-Followup-To: Jim Blandy , John Wolfe , Andrew Cagney , gdb@sources.redhat.com > References: <200210231720.g9NHKqO32140@zenia.red-bean.com> <3DB6EEE6.1060100@redhat.com> > Content-Disposition: inline > In-Reply-To: > User-Agent: Mutt/1.5.1i > Status: RO > X-SCO-PAD: XXXXXX > X-SCO-UID: 80086 > Mime-Version: 1.0 > Content-Type: text/plain; charset=us-ascii > Content-Transfer-Encoding: 7bit > Content-MD5: DO4ydt8CLpx+WpEXXcY7yw== > Content-Length: 2412 > > On Mon, Nov 04, 2002 at 03:06:21PM -0500, Jim Blandy wrote: > > > > Andrew Cagney writes: > > > > I'm undertaking some related work in dwarf2read.c which will almost > > > > certainly conflict with Caldera's changes, and I'd like to see where > > > > you guys ended up. > > > > > > Care to expand? > > > > Sure --- I'm trying to put together a patch to support > > inter-compilation unit die references, which is (the hardest?) part of > > supporting Dwarf 2 compression. > > > > I think the changes are going to be pretty widespread. > > > > At the moment, dwarf2read.c has a number of global variables that > > describe per-compilation-unit things. These get set as we do the > > psymtab scan, stashed in each psymtab we create, and then restored > > each time we convert a psymtab to a symtab. If we're going to handle > > inter-CU references, we're going to be dealing with more than one CU > > at a time, so that's not going to be sufficient any more --- which CU > > you need depends on which die you're looking at. > > > > I'd like to change GDB to have a per-objfile Dwarf-specific structure > > (like struct dbx_symfile_info for STABS), and per-CU Dwarf-specific > > structures. These would be passed as arguments amongst the > > dwarf2read.c functions as appropriate. Furthermore, each die might > > need to have a pointer to the CU that owns it. > > > > Those are pretty pervasive changes, but I think the folks who have > > worked in dwarf2read.c will agree that they're the right way to go. > > When I've gotten something working on the branch I'll have more > > perspective on what's really needed. > > Not only will they agree, I believe Petr and John had already finished > doing this. Doubtless there's still some room for improvement, but the > functionality is there... John, do you have that merged dwarf2read > available? > > [For instance, from Petr's July posting: > * dwarf2read.c (build_die_ref): New function that builds > a new die reference if necessary, will search across > multiple comp units to find the reference. > (find_die_ref): New function that searches for a die > reference for a given comp unit. > (find_cu_header_from_begin_offset): New function that > searches through a link list of comp unit headers for > a comp unit that matches the given offset. > ] Apologies for the delay in responding. I actually took a couple of days off. Yes, I do. I sent a full copy of dwarf2read.c directly to Jim with a copy to gdb@sources.redhat.com. Jim got his copy, but the copy to gdb@sources.redhat.com was bounced to to an e-mail size limit. The key thing is that Jim got the copy to look at.