* Petr Sorfa's Dwarf 2 changes
@ 2002-10-23 10:39 Jim Blandy
2002-10-23 11:48 ` Andrew Cagney
0 siblings, 1 reply; 10+ messages in thread
From: Jim Blandy @ 2002-10-23 10:39 UTC (permalink / raw)
To: John Wolfe; +Cc: gdb
John, could you post a copy of your current dwarf2read.c, with all
your changes --- approved, unapproved, and unsubmitted --- in place?
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.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Petr Sorfa's Dwarf 2 changes
2002-10-23 10:39 Petr Sorfa's Dwarf 2 changes Jim Blandy
@ 2002-10-23 11:48 ` Andrew Cagney
2002-11-04 12:21 ` Jim Blandy
0 siblings, 1 reply; 10+ messages in thread
From: Andrew Cagney @ 2002-10-23 11:48 UTC (permalink / raw)
To: Jim Blandy; +Cc: John Wolfe, gdb
> John, could you post a copy of your current dwarf2read.c, with all
> your changes --- approved, unapproved, and unsubmitted --- in place?
(John, I take it jim just wants you to send the entire file as currently
is in private. Jim, the caldera code is in
ftp://sources.redhat.com/pub/gdb/contrib/caldera/ (i think)).
> 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?
Andrew
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Petr Sorfa's Dwarf 2 changes
2002-10-23 11:48 ` Andrew Cagney
@ 2002-11-04 12:21 ` Jim Blandy
2002-11-04 12:25 ` Daniel Jacobowitz
0 siblings, 1 reply; 10+ messages in thread
From: Jim Blandy @ 2002-11-04 12:21 UTC (permalink / raw)
To: Andrew Cagney; +Cc: gdb
Andrew Cagney <ac131313@redhat.com> 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.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Petr Sorfa's Dwarf 2 changes
2002-11-04 12:21 ` Jim Blandy
@ 2002-11-04 12:25 ` Daniel Jacobowitz
2002-11-04 12:38 ` Daniel Berlin
2002-11-05 9:18 ` Jim Blandy
0 siblings, 2 replies; 10+ messages in thread
From: Daniel Jacobowitz @ 2002-11-04 12:25 UTC (permalink / raw)
To: Jim Blandy, John Wolfe; +Cc: Andrew Cagney, gdb
On Mon, Nov 04, 2002 at 03:06:21PM -0500, Jim Blandy wrote:
>
> Andrew Cagney <ac131313@redhat.com> 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.
]
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
^ permalink raw reply [flat|nested] 10+ messages in thread* Re: Petr Sorfa's Dwarf 2 changes
2002-11-04 12:25 ` Daniel Jacobowitz
@ 2002-11-04 12:38 ` Daniel Berlin
2002-11-04 12:50 ` Daniel Jacobowitz
2002-11-05 9:20 ` Jim Blandy
2002-11-05 9:18 ` Jim Blandy
1 sibling, 2 replies; 10+ messages in thread
From: Daniel Berlin @ 2002-11-04 12:38 UTC (permalink / raw)
To: Daniel Jacobowitz; +Cc: Jim Blandy, John Wolfe, Andrew Cagney, gdb
> Not only will they agree, I believe Petr and John had already finished
> doing this.
>
And I did it before them.
> Doubtless there's still some room for improvement, but the
> functionality is there... John, do you have that merged dwarf2read
> available?
If they don't, you should be able to find mine in the archives.
Unless i'm misremembering Petr's, it keeps all the CU's around all the
time.
One thing I did was to make it so you could throw away CU's at will,
and it would just reread them if/when necessary (IE it would just keep
the last 10 used CU's or something as a cache). Cuts down on memory
usage significantly with almost no loss in speed.
PS I remember someone mentioning something about not needing to
basically rewrite the dwarf2 reader to do this, though, which is what
"pretty pervasive changes" sounds like. Not that i'm bitter, i just
find it funny. :)
Though i'm aware the retort will be that i did more than necessary
(like mmapping the symbol files, and the ever controversial duplicate
removal).
Jim, you should be able to just rip the pieces from the dwarf2 reader
rewrite i had done, or Petr did, without any trouble.
> [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.
> ]
>
> --
> Daniel Jacobowitz
> MontaVista Software Debian GNU/Linux Developer
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Petr Sorfa's Dwarf 2 changes
2002-11-04 12:38 ` Daniel Berlin
@ 2002-11-04 12:50 ` Daniel Jacobowitz
2002-11-05 9:20 ` Jim Blandy
1 sibling, 0 replies; 10+ messages in thread
From: Daniel Jacobowitz @ 2002-11-04 12:50 UTC (permalink / raw)
To: Daniel Berlin; +Cc: Jim Blandy, John Wolfe, Andrew Cagney, gdb
On Mon, Nov 04, 2002 at 03:38:05PM -0500, Daniel Berlin wrote:
> >Not only will they agree, I believe Petr and John had already finished
> >doing this.
>
> >
> And I did it before them.
Yes, sorry. I still have code from you, posted to gdb-patches in July
2001, which does this. I merged it most of the way forward to CVS a
couple of months later and ran out of time to finish the job.
> > Doubtless there's still some room for improvement, but the
> >functionality is there... John, do you have that merged dwarf2read
> >available?
> If they don't, you should be able to find mine in the archives.
> Unless i'm misremembering Petr's, it keeps all the CU's around all the
> time.
> One thing I did was to make it so you could throw away CU's at will,
> and it would just reread them if/when necessary (IE it would just keep
> the last 10 used CU's or something as a cache). Cuts down on memory
> usage significantly with almost no loss in speed.
Exactly what I was trying to remember :)
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Petr Sorfa's Dwarf 2 changes
2002-11-04 12:38 ` Daniel Berlin
2002-11-04 12:50 ` Daniel Jacobowitz
@ 2002-11-05 9:20 ` Jim Blandy
1 sibling, 0 replies; 10+ messages in thread
From: Jim Blandy @ 2002-11-05 9:20 UTC (permalink / raw)
To: Daniel Berlin; +Cc: Daniel Jacobowitz, John Wolfe, Andrew Cagney, gdb
Daniel Berlin <dberlin@dberlin.org> writes:
> PS I remember someone mentioning something about not needing to
> basically rewrite the dwarf2 reader to do this, though, which is what
> "pretty pervasive changes" sounds like. Not that i'm bitter, i just
> find it funny. :)
Well, by "pervasive" I mean, "this will probably conflict with other
patches." You'll still recognize all the functions.
> Jim, you should be able to just rip the pieces from the dwarf2 reader
> rewrite i had done, or Petr did, without any trouble.
Yep, that's the plan.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Petr Sorfa's Dwarf 2 changes
2002-11-04 12:25 ` Daniel Jacobowitz
2002-11-04 12:38 ` Daniel Berlin
@ 2002-11-05 9:18 ` Jim Blandy
1 sibling, 0 replies; 10+ messages in thread
From: Jim Blandy @ 2002-11-05 9:18 UTC (permalink / raw)
To: Daniel Jacobowitz; +Cc: John Wolfe, Andrew Cagney, gdb
Daniel Jacobowitz <drow@mvista.com> writes:
> On Mon, Nov 04, 2002 at 03:06:21PM -0500, Jim Blandy wrote:
> >
> > Andrew Cagney <ac131313@redhat.com> 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?
Yeah, not to diss that at all: I should have also explained that I'm
hoping to steal as much of that work as I can. (Thus the request that
started this thread.)
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Petr Sorfa's Dwarf 2 changes
@ 2002-10-23 11:37 John Wolfe
0 siblings, 0 replies; 10+ messages in thread
From: John Wolfe @ 2002-10-23 11:37 UTC (permalink / raw)
To: jlw, jimb; +Cc: gdb
> From jimb@zenia.red-bean.com Wed Oct 23 13:53:43 2002
> John, could you post a copy of your current dwarf2read.c, with all
> your changes --- approved, unapproved, and unsubmitted --- in place?
>
> 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.
Arrrgh, just resynching with the top-of tree. I was incorporating Petr's
original patch
http://sources.redhat.com/ml/gdb-patches/2002-07/msg00066.html
in 3 distinct steps, so that what I submitted at any step would/could
stand-alone. There were some struct member name changes and I noticed
that the new lookup routines did not consider multiple .dwarf_info
sections (shared object), so I am revising them.
I will have the full patch incorporated and retested by Friday noon.
Will that be sufficient?
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Petr Sorfa's Dwarf 2 changes
@ 2002-11-06 7:34 John Wolfe
0 siblings, 0 replies; 10+ messages in thread
From: John Wolfe @ 2002-11-06 7:34 UTC (permalink / raw)
To: jimb, jlw, drow; +Cc: ac131313, gdb
> From: Daniel Jacobowitz <drow@mvista.com>
> To: Jim Blandy <jimb@redhat.com>, John Wolfe <jlw@caldera.com>
> Cc: Andrew Cagney <ac131313@redhat.com>, gdb@sources.redhat.com
> Subject: Re: Petr Sorfa's Dwarf 2 changes
> Message-ID: <20021104202641.GA7194@nevyn.them.org>
> Mail-Followup-To: Jim Blandy <jimb@redhat.com>,
John Wolfe <jlw@caldera.com>, Andrew Cagney <ac131313@redhat.com>,
gdb@sources.redhat.com
> References: <200210231720.g9NHKqO32140@zenia.red-bean.com>
<3DB6EEE6.1060100@redhat.com> <vt2fzuhje0y.fsf@zenia.red-bean.com>
> Content-Disposition: inline
> In-Reply-To: <vt2fzuhje0y.fsf@zenia.red-bean.com>
> 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 <ac131313@redhat.com> 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.
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2002-11-06 15:34 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-10-23 10:39 Petr Sorfa's Dwarf 2 changes Jim Blandy
2002-10-23 11:48 ` Andrew Cagney
2002-11-04 12:21 ` Jim Blandy
2002-11-04 12:25 ` Daniel Jacobowitz
2002-11-04 12:38 ` Daniel Berlin
2002-11-04 12:50 ` Daniel Jacobowitz
2002-11-05 9:20 ` Jim Blandy
2002-11-05 9:18 ` Jim Blandy
2002-10-23 11:37 John Wolfe
2002-11-06 7:34 John Wolfe
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox