DWARF2 PE/COFF port and parsing ?

David Carlton carlton@math.stanford.edu
Tue May 20 22:17:00 GMT 2003


On Tue, 20 May 2003 16:56:52 -0500 (CDT), Brian Ford <ford@vss.fsi.com> said:

>> What does "p *pst" say?

> (gdb) p *pst
> Cannot access memory at address 0x0
> (gdb) p pst
> $1 = (struct partial_symtab *) 0x0

That's unfortunate; maybe the optimizer has already invalidated pst at
that point?  You could try finding an earlier place in the command
where pst is still valid and have GDB print out the value of pst each
time it hits that location (which will happen a lot), and then, when
GDB crashes, look at the last value for pst and print out 
*((struct partial_sytmab *) <insert last value>)

Maybe that will give a clue as to what's going on; maybe it won't.

>> If this doesn't help, maybe you could give some more details about
>> exactly how you've been tinkering with the readers.

> Actually, I haven't.  The tinkering I have done is in binutils to get
> valid DWARF2 objects and let bfd know that PE/COFF can produce them.  gdb
> is current cvs.  I have more tinkering to go, but the objects and
> executables should be valid.  libdwarf and dwarfdump have no trouble
> parsing them.

Weird.  I'm pretty confused, but maybe following through the
psymtab building will help.

David Carlton
carlton@math.stanford.edu



More information about the Gdb mailing list