Re: Instruction address catching

Fredrik Tolf
2002-10-05T00:21:23Z

On Sat, 2002-10-05 at 02:11, Kevin Buettner wrote:
> On Oct 5, 1:36am, Fredrik Tolf wrote:
>
> > Is it possible, with the current version of gdb, to make it detect every
> > time an address is written to, and to make it stop only if the address
> > of the instruction that wrote to that address isn't equal to a specific
> > value.
>
> Do it like this:
>
> (gdb) watch foo
> Hardware watchpoint 1: foo
> (gdb) condition 1 $pc != 0x80484c8
>
> The address to compare $pc against should be the address of the
> instruction *after* the one that writes to ``foo''. It's probably
> easier to figure this out by simply setting a watchpoint on foo,
> running 'til it's hit, and if that's not the one you're interested
> in, add a condition so that it won't stop there again.
>
> > If it's possible, does it work in a multithreaded application?
>
> It should. If it doesn't, it's a bug.
Are you sure? Wouldn't the pc it compares to be that of the selected
thread and not that of the thread that wrote?

>
> Kevin
>