Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Daniel Jacobowitz <drow@false.org>
To: Aleksandar Ristovski <aristovski@qnx.com>
Cc: gdb@sourceware.org
Subject: Re: Frame lost after 'leave' and before 'ret' instruction on i386?
Date: Fri, 16 May 2008 15:58:00 -0000	[thread overview]
Message-ID: <20080516155828.GA31038@caradoc.them.org> (raw)
In-Reply-To: <482DA814.7030703@qnx.com>

On Fri, May 16, 2008 at 11:28:20AM -0400, Aleksandar Ristovski wrote:
> What happens is, we have restored the stack pointer but gdb is unaware of that fact and tries to unwind using already unwound value...
>
> how is this supposed to work?

Poorly.

The biggest problem, in my opinion, is that GCC emits bogus unwind
info that does not describe epilogues.  I don't know about other
compilers.  So far no one has fixed this in a way that didn't bloat
debug info to an unacceptable size.

When DWARF unwinding is not in use, there's the in_epilogue_p hook.
Prologue analyzers could also detect epilogues using the same
technique.  But this is slow and complicated.

-- 
Daniel Jacobowitz
CodeSourcery


  reply	other threads:[~2008-05-16 15:58 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-16 15:32 Aleksandar Ristovski
2008-05-16 15:58 ` Daniel Jacobowitz [this message]
2008-05-16 16:02   ` Aleksandar Ristovski
2008-05-16 16:09     ` Daniel Jacobowitz
2008-05-22 14:29   ` Aleksandar Ristovski
2008-05-22 14:40     ` Aleksandar Ristovski
2008-05-22 14:50     ` Daniel Jacobowitz
2008-05-22 15:05       ` Aleksandar Ristovski
2008-05-22 16:00         ` Aleksandar Ristovski
2008-05-22 16:02         ` Daniel Jacobowitz
2008-05-23 15:19           ` Aleksandar Ristovski
2008-05-22 18:06             ` Aleksandar Ristovski
2008-05-23 17:11             ` Daniel Jacobowitz
2008-05-23 17:23         ` Michael Snyder
2008-05-26 23:08           ` Aleksandar Ristovski
2008-05-27 21:33             ` Aleksandar Ristovski
2008-05-29  6:21             ` Thiago Jung Bauermann
2008-05-29  6:22               ` Aleksandar Ristovski
2008-06-04 13:12             ` Aleksandar Ristovski
2008-06-05 20:12               ` Mark Kettenis
2008-05-16 17:24 ` Mark Kettenis
2008-05-16 17:28   ` Aleksandar Ristovski
2008-05-16 17:47     ` Daniel Jacobowitz
2008-05-16 17:48     ` Mark Kettenis

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=20080516155828.GA31038@caradoc.them.org \
    --to=drow@false.org \
    --cc=aristovski@qnx.com \
    --cc=gdb@sourceware.org \
    /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