This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Are mixed debug formats in one exe supported?


On Tue, 23 Mar 2004, Brian Ford wrote:

> BTW, please CC me as I'm not subscribed to the list.  Thanks.
>
> On Tue, 23 Mar 2004, Daniel Jacobowitz wrote:
>
> > On Tue, Mar 23, 2004 at 02:41:01PM -0600, Brian Ford wrote:
> > > I am trying to add DWARF2 support to PE/COFF for Cygwin/Mingw.  They
> > > currently use stabs.
> > >
> > > While testing, executables end up having mixed stabs/DWARF2 debugging
> > > info if any system/gcc/previously compiled static libs are linked in.
> > > The result causes gdb to SEGV while traversing the partial symbol tables
> > > looking for symbol main.
> > >
> > > The problem is that init_psymbol_list is called for the executable twice
> > > due to mainline being set at dbxread.c:562, and again at
> > > dwarf2read.c:1076.
> > >
> > > So, the question.  Is this meant to work?  I assume the reason mainline is
> > > used here is:
> > >
> > > /* If we are reinitializing, or if we have never loaded syms yet, init */
> > >
> > > Why does reinitializing not clean up after itself (ie. reset the
> > > [global|static]_psymbols.size to 0)?  Is that a leak?
> > >
> > > I'm going to keep digging, but since I have zero knowledge of gdb
> > > internals, I thought I'd ask and save some time.  Thanks.
> >
> > I can't answer any of the more detailed questions, but yes, this is
> > supposed to work.  It's easy to produce binaries with both stabs and
> > DWARF-2 on GNU/Linux, and it generally works OK.
> >
> I almost see why.  Can someone please tell me why this comment above
> elfstab_build_psymtabs is true for the DWARF part?
>
>    This ELF file has already been processed to get its minimal symbols,
>    and any DWARF symbols that were in it.
>
> ie. What gaurantees that DWARF is processed before stabs?  I can't see
> that yet.  If I can understand that, I think I can easily fix my problem.
>
> Thanks again.
>
Sorry to follow up my own post, but I'm now even more confused.

>From what I can see, the order (for elf) is gauranteed to be ECOFF, stabs,
DWARF2, DWARF, DWARF2 frame info.  So, that comment just looks wrong.  And, I
still don't understand why it works on Linux.

-- 
Brian Ford
Senior Realtime Software Engineer
VITAL - Visual Simulation Systems
FlightSafety International
Phone: 314-551-8460
Fax:   314-551-8444


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]