Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Michael Snyder <msnyder@redhat.com>
To: Jim Blandy <jimb@cygnus.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [PATCH] Improved support for overlay breakpoints in ROM
Date: Thu, 07 Feb 2002 11:44:00 -0000	[thread overview]
Message-ID: <3C62D749.6371EDD9@redhat.com> (raw)
In-Reply-To: <npit9bnsya.fsf@zwingli.cygnus.com>

[-- Attachment #1: Type: text/plain, Size: 862 bytes --]

Jim Blandy wrote:
> 
> Michael Snyder <msnyder@redhat.com> writes:
> 
> > Jim Blandy wrote:
> > >
> > > Typo:
> > >
> > > > +     /* On the same principal, an overlay manager can arrange to call a
> > >
> > > s/principal/principle/
> > >
> > > It seems to me that, if overlay management is disabled, or set to
> > > `manual', we shouldn't even set a breakpoint in _ovly_debug_event.
> >
> > By analogy with the longjmp breakpoint, it seems easiest just to
> > create the breakpoint when the symbol file is loaded, and then
> > enable/disable it as needed.  When it is disabled, it doesn't
> > represent any significant overhead.
> 
> Okay, I see.
> 
> > > We need to document the new rules in the GDB manual.
> >
> > Yep.
> 
> ... How can we prevent this from falling through the cracks?  I don't
> mind doing it, but I'm afraid I'm going to forget.

How's this?

[-- Attachment #2: ovly.patch --]
[-- Type: text/plain, Size: 1265 bytes --]

2002-02-06  Michael Snyder  <msnyder@redhat.com>

	* gdb.texinfo (overlays): Mention new magic symbol
	'_ovly_debug_event', which allows GDB to keep better track
	of overlays.

Index: gdb.texinfo
===================================================================
RCS file: /cvs/src/src/gdb/doc/gdb.texinfo,v
retrieving revision 1.85
diff -p -r1.85 gdb.texinfo
*** gdb.texinfo	2002/02/01 18:41:51	1.85
--- gdb.texinfo	2002/02/06 18:27:16
*************** executable file.  When @value{GDBN} find
*** 6646,6651 ****
--- 6646,6660 ----
  the entry's @code{mapped} member to determine whether the overlay is
  currently mapped.
  
+ In addition, your overlay manager may define a function called
+ @var{_ovly_debug_event}.  If this function is defined, @value{GDBN}
+ will silently set a breakpoint there.  If the overlay manager then
+ calls this function whenever it has changed the overlay table, this
+ will enable @value{GDBN} to accurately keep track of which overlays
+ are in program memory, and update any breakpoints that may be set
+ in overlays.  This will allow breakpoints to work even if the 
+ overlays are kept in ROM or other non-writable memory while they
+ are not being executed.
  
  @node Overlay Sample Program
  @section Overlay Sample Program

  reply	other threads:[~2002-02-07 19:44 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-02-04 16:18 Michael Snyder
2002-02-04 16:40 ` [RFA] " Michael Snyder
2002-02-05  3:14 ` [PATCH] " Eli Zaretskii
2002-02-05  9:54   ` Michael Snyder
2002-02-05 16:20 ` Jim Blandy
2002-02-05 17:11   ` Michael Snyder
2002-02-05 20:17     ` Jim Blandy
2002-02-07 11:44       ` Michael Snyder [this message]
2002-02-07 12:23         ` Eli Zaretskii
2002-02-07 16:40           ` Michael Snyder
2002-02-07 15:30         ` Andrew Cagney

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=3C62D749.6371EDD9@redhat.com \
    --to=msnyder@redhat.com \
    --cc=gdb-patches@sources.redhat.com \
    --cc=jimb@cygnus.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