From: Daniel Jacobowitz <drow@mvista.com>
To: Earl Chew <earl_chew@agilent.com>
Cc: gdb@sources.redhat.com
Subject: Re: Mystified by "Internal error: pc 0x89f21e10 read in psymtab, but not in symtab
Date: Fri, 13 Sep 2002 15:51:00 -0000 [thread overview]
Message-ID: <20020913225151.GA24869@nevyn.them.org> (raw)
In-Reply-To: <3D8269C8.8E33C4AC@agilent.com>
On Fri, Sep 13, 2002 at 03:42:16PM -0700, Earl Chew wrote:
> Daniel Jacobowitz wrote:
> > What debug information is produced by your toolchain - mdebug, I bet.
> > Mdebug support is a little on the rotting side because we don't have
> > anyone interested/willing to maintain it; and mdebug is a mighty
> > arcane format.
>
> So, I roll up my sleeves and start debugging gdb. I believe
> the compiler is producing stabs in elf. How can I check?
What version compiler and assembler are you using? And are they FSF or
WindRiver-supplied?
You should be using stabs-in-ELF, but it requires matching Binutils and
GCC. For binutils, it's enough to see that you get a .stab and
.stabstr and no .mdebug. For GCC it's harder.
> The target is VxWorks using remote serial protocol with
> segment resolution using qOffset.
>
> I put in a couple of printfs, and notice that the
> block vectors have start > end. Oops.
>
> I put another breakpoint in end_symtab, and notice that
> it's being called from read_ofile_symtab in dbxread.c. At the
> end of this function, there's a line that reads:
>
> pst->symtab = end_symtab (text_offset + text_size, objfile,
> SECT_OFF_TEXT (objfile));
>
> Looking at end_symtab in buildsym.c, I see:
>
> /* Make a block for the local symbols within. */
> finish_block (cstk->name, &local_symbols, cstk->old_blocks,
> cstk->start_addr, end_addr, objfile);
>
> Printing cstk->start_addr, I see that this is the succesfully
> relocated address (somewhere at 0x8fxxxxxx), but end_addr is
> a small number --- obviously not relocated.
>
> Patching dbxread.c
>
> pst->symtab = end_symtab (text_offset +
> text_size +
> section_offsets->offsets[SECT_OFF_TEXT (objfile)],
> objfile, SECT_OFF_TEXT (objfile));
>
> cures the problem.
>
> But I'm not sure if this patch should be applied to
> end_symtab() instead. I looked and end_symtab() is called from
> many places, and I don't have enough information to decide
> if they're right/wrong in the manner of dbxread.c.
This sounds like your GCC and binutils are out of sync, in fact.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
next prev parent reply other threads:[~2002-09-13 22:51 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-09-13 14:42 Earl Chew
2002-09-13 15:01 ` Daniel Jacobowitz
2002-09-13 15:42 ` Earl Chew
2002-09-13 15:51 ` Daniel Jacobowitz [this message]
2002-09-13 16:13 ` Earl Chew
2002-09-13 18:32 ` Daniel Jacobowitz
2002-09-15 8:43 ` Earl Chew
2002-09-15 9:02 ` Daniel Jacobowitz
2002-09-15 9:11 ` Earl Chew
2002-09-15 13:39 ` H. J. Lu
2002-09-15 13:43 ` Daniel Jacobowitz
2002-09-15 21:42 ` Earl Chew
2002-09-16 7:03 ` H. J. Lu
2002-09-16 12:26 ` Jim Blandy
2002-09-16 13:01 ` Earl Chew
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20020913225151.GA24869@nevyn.them.org \
--to=drow@mvista.com \
--cc=earl_chew@agilent.com \
--cc=gdb@sources.redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox