Re: Instruction address catching

Kevin Buettner
2002-10-05T00:11:14Z

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.

Kevin