Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Mark Kettenis <mark.kettenis@xs4all.nl>
To: jimb@red-bean.com
Cc: pgilliam@us.ibm.com, gdb-patches@sources.redhat.com
Subject: Re: [PATCH] add 'rs6000_in_function_epilogue_p()'
Date: Fri, 02 Dec 2005 18:44:00 -0000	[thread overview]
Message-ID: <200512021828.jB2IS9GO025281@elgar.sibelius.xs4all.nl> (raw)
In-Reply-To: <8f2776cb0512011707p120df411w3a685c453d4ec625@mail.gmail.com> 	(message from Jim Blandy on Thu, 1 Dec 2005 17:07:24 -0800)

> Date: Thu, 1 Dec 2005 17:07:24 -0800
> From: Jim Blandy <jimb@red-bean.com>
>
> Whatever we do immediately, the underlying cause here is that
> unwinding isn't working at every instruction.  If it were, then the
> call to frame_find_by_id would find the frame containing the watched
> variable, and watchpoint_check would correctly conclude that the
> variable was still in scope.
> 
> Paul, does your test program have Dwarf CFI for the functions in question?

Unfortunately, GCC's CFI is not complete.  At one point GCC did
generate CFI for epilogues, but that really screwed up cases like:


main:
	prologue
	jump to body
epilogue:
	epilogue
body:
	...
	...
	jump to epilogue

whis GCC was generating quite a lot.  So generating CFI for epilogues
was disabled.

I vaguely remember that Richard Henderson said that generating correct
CFI for the above case would be possible with tree SSA.  But I don't
think this has ahppened yet.

Actually I think the fact that CFI works at all is mostly because it
is also used for exception handling.  Obviously, generating correct
CFI for the epilogue isn't terribly important for exception handling,
since there is no code that can throw exceptions in the epilogue
(although it becomes somewhat important if you allow for asynchronous
exceptions).  It'd be great if we could get some of the GCC hackers a
bit more interested in gdb.

Mark


  parent reply	other threads:[~2005-12-02 18:28 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-11-30 23:56 Paul Gilliam
2005-12-01  5:21 ` Jim Blandy
2005-12-01 18:27   ` Paul Gilliam
2005-12-01 20:14     ` Paul Gilliam
2005-12-02  1:13 ` Jim Blandy
2005-12-02  1:23   ` Daniel Jacobowitz
2005-12-02 20:12     ` Paul Gilliam
2005-12-02 20:17       ` Paul Gilliam
2005-12-03  3:05       ` Jim Blandy
2005-12-02 23:38         ` Jim Blandy
2005-12-04 20:19         ` Daniel Jacobowitz
2005-12-04 18:59           ` Daniel Jacobowitz
2005-12-04 20:48           ` Jim Blandy
2005-12-04 21:12             ` Jim Blandy
2005-12-04 21:16             ` Daniel Jacobowitz
2005-12-04 21:22               ` Jim Blandy
2005-12-02  4:02   ` Joel Brobecker
2005-12-02 18:44   ` Mark Kettenis [this message]
2005-12-02 19:15   ` [PATCH] add 'rs6000_in_function_epilogue_p()' (Revised) Paul Gilliam
2005-12-02 20:28     ` Mark Kettenis
2005-12-02 21:19       ` Daniel Jacobowitz
2005-12-02 21:21         ` Mark Kettenis
2005-12-03  4:53       ` [PATCH] add 'rs6000_in_function_epilogue_p()' (Revised, again) Paul Gilliam
2005-12-03  5:43         ` Paul Gilliam
2005-12-02 21:44     ` [PATCH] add 'rs6000_in_function_epilogue_p()' (Revised) Kevin Buettner
2005-12-06 15:20       ` Paul Gilliam
2005-12-06 15:15         ` Paul Gilliam
2005-12-08  4:42         ` Kevin Buettner
2006-01-11 17:44       ` Paul Gilliam
2006-01-12  0:12         ` Paul Gilliam
2006-01-12 23:53           ` Paul Gilliam
2006-01-13 21:05             ` Mark Kettenis
2006-01-17  3:46               ` Paul Gilliam
2006-01-17 19:29                 ` Mark Kettenis
2006-02-09 17:46                 ` Kevin Buettner
2005-12-02 22:19     ` Jim Blandy
2005-12-02 22:28       ` Daniel Jacobowitz
2005-12-02 23:20         ` Jim Blandy
2005-12-03 12:48       ` Paul Gilliam

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=200512021828.jB2IS9GO025281@elgar.sibelius.xs4all.nl \
    --to=mark.kettenis@xs4all.nl \
    --cc=gdb-patches@sources.redhat.com \
    --cc=jimb@red-bean.com \
    --cc=pgilliam@us.ibm.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