Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Tristan Gingold <gingold@adacore.com>
To: Pedro Alves <palves@redhat.com>
Cc: "gdb-patches@sourceware.org ml" <gdb-patches@sourceware.org>,
	Joel Brobecker <brobecker@adacore.com>,
	Roland Schwingel <roland.schwingel@onevision.de>
Subject: Re: [PATCH v3] Windows x64 SEH unwinder
Date: Thu, 22 Aug 2013 15:41:00 -0000	[thread overview]
Message-ID: <848C81AC-2171-412B-A6F2-101352933F3E@adacore.com> (raw)
In-Reply-To: <52162DA9.5060108@redhat.com>


On Aug 22, 2013, at 5:26 PM, Pedro Alves <palves@redhat.com> wrote:

> On 08/22/2013 10:33 AM, Tristan Gingold wrote:
>> 
>> after discussion with Roland Schwingel, I have found that the patch
>> doesn't handle well dwarf3 DW_OP_call_frame_cfa, because the SEH
>> unwinder is before the dwarf2 one.
> 
> Can you clarify this a little better for the archives?

Sure.

> So that mean that for binaries built before that gcc fix,
> the SEH unwinder won't kick in at all, right?

No.
If dwarf2 info are presents, they will be used to unwind the
frames.  If they aren't, unwinding will probably fail.

>  Then,
> how come this fixes Roland's age old issue, and improves
> unwinding for him?

For the part compiled with gcc, the patch shouldn't change
anything.  But for function compiled by MS compilers (those
in dll), gdb will now unwind their frame by using the SEH
unwinder,

> In the previous versions, there was talk about needing
> finer ordering of the unwinders in order to support both
> old and new binaries.  What changed?  Why is this okay
> now?

Unwinding was possible when compiled with -g.  It is still
possible.
Version 1 and 2 of the patch failed, because the dwarf
unwinder was never used (always masked by the SEH unwinder).

It is still possible that gdb with support for SEH unwinder
fails where gdb without for binaries produced by old gcc for
the cases where the prologue analyzer using heuristic was
correct.  But debugging with this unwinder isn't reliable.

Hopes it clarifies :-)

Tristan.


  reply	other threads:[~2013-08-22 15:41 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-09 10:53 Add Windows x64 SEH unwinder (take 2) Joel Brobecker
2013-01-09 10:53 ` [RFA/commit+NEWS 1/2] Add command set/show debug unwind Joel Brobecker
2013-01-09 12:41   ` Jan Kratochvil
2013-01-09 18:40     ` Joel Brobecker
2013-01-09 15:14   ` Tom Tromey
2013-01-09 16:01   ` Eli Zaretskii
2013-01-09 10:53 ` [RFA/commit+doco 2/2] Windows x64 SEH unwinder Joel Brobecker
2013-01-09 15:52   ` Pedro Alves
2013-01-09 16:28     ` Tristan Gingold
2013-01-09 17:10       ` Pedro Alves
2013-01-09 17:53         ` Tom Tromey
2013-01-09 19:11           ` Pedro Alves
2013-01-09 20:07         ` Tristan Gingold
2013-01-10 16:24           ` Pedro Alves
2013-01-11  8:04             ` Tristan Gingold
2013-07-08 10:55             ` [RFA] Windows x64 SEH unwinder (v2) Tristan Gingold
2013-07-26 15:22               ` Pedro Alves
2013-08-19 13:59                 ` Tristan Gingold
2013-08-19 14:13                   ` Pedro Alves
2013-08-22  9:33                 ` [PATCH v3] Windows x64 SEH unwinder Tristan Gingold
2013-08-22 15:10                   ` Eli Zaretskii
2013-08-22 15:26                   ` Pedro Alves
2013-08-22 15:41                     ` Tristan Gingold [this message]
2013-08-22 16:15                       ` Pedro Alves
2013-08-23  6:54                         ` Tristan Gingold
2013-08-27 17:45                           ` Pedro Alves
2013-09-02  9:28                             ` Tristan Gingold
2013-01-09 16:06   ` [RFA/commit+doco 2/2] " Eli Zaretskii
2013-01-09 16:29     ` Tristan Gingold
2013-01-09 11:05 ` Add Windows x64 SEH unwinder (take 2) Pedro Alves
2013-01-09 11:11   ` Joel Brobecker
2013-08-22 12:07 [PATCH v3] Windows x64 SEH unwinder Roland Schwingel

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=848C81AC-2171-412B-A6F2-101352933F3E@adacore.com \
    --to=gingold@adacore.com \
    --cc=brobecker@adacore.com \
    --cc=gdb-patches@sourceware.org \
    --cc=palves@redhat.com \
    --cc=roland.schwingel@onevision.de \
    /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