This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH v2] Events when inferior is modified
- From: Nick Bull <nicholaspbull at gmail dot com>
- To: Phil Muldoon <pmuldoon at redhat dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Sun, 1 Dec 2013 15:23:46 +0000
- Subject: Re: [PATCH v2] Events when inferior is modified
- Authentication-results: sourceware.org; auth=none
- References: <51CDBD48 dot 6010903 at gmail dot com> <87k3k7kbdy dot fsf at fleche dot redhat dot com> <CABbKtXsh+BG6=s6ZmaoEFYeiFR-9SAWqMYk3DqP-Ej047zd7LQ at mail dot gmail dot com> <528A0A83 dot 1080203 at gmail dot com> <52931CEC dot 7040407 at redhat dot com>
On 25 November 2013 09:48, Phil Muldoon <pmuldoon@redhat.com> wrote:
> On 18/11/13 12:39, Nick Bull wrote:
>
>> This patch adds new observers, and corresponding Python events, for
>> various actions on an inferior: calling a function (by hand),
>> modifying registers or modifying memory.
>
> Thanks just a few nits and some questions. I did not see tests for
> these, and also, documentation? In any case, both are needed.
Phil,
Thanks for looking at this. All the nits make sense, and I'll fix them and
add tests.
> I'm kind of on the fence about the inferior_altered naming. A lot of
> things can alter an inferior which would make this a very broad event
> category. Like single stepping I would consider altering the inferior.
>
> With your memory changed event, would it fire on a breakpoint
> insertion? GDB does a lot of installing/uninstalling of breakpoints
> behind the scene in the inferior.
>
> Also, it would be super if we could split up the register
> and memory events with read/write events. What do you think?
I'm going to revise the memory change event to use the existing
memory_changed observer, which I had overlooked because it doesn't
have a Python event. It's closer to what I wanted anyway, which is
to track only modifications to the program that are made explicitly by
the GDB user.
Given this I would give it a separate MemoryChangedEvent type so
that the name matches the corresponding observer. Then the other
events would be RegisterChanged and InferiorCall.
I suppose we might want to somehow distinguish that these events are
about explicit changes to program state rather than the 'behind-the-scenes'
work that GDB does, in case we ever want to create events of the
latter type. But I don't have any great suggestions for names just now.
Nick