This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

rwatchpoint configuration


Hello,

I am debugging a read watchpoint issue on an embedded target (Xilinx
MicroBlaze processor).

The issue I'm trying to resolve is that gdb breaks on a read
watchpoint _only_ if the value of the variable being watched has not
changed since the watchpoint was set. This comes from the following
condition in gdb:

gdb/breakpoint.c:2792

case WP_VALUE_CHANGED:
        if (b->type == bp_read_watchpoint)
              {
                  /* Don't stop: read watchpoints shouldn't fire if
                     the value has changed. This is for targets
                     which cannot set read-only watchpoints. */
                  bs->print_it = print_it_noop;
                  bs->stop = 0;
                  continue;
              }

Since the MicroBlaze target can indeed set read-only watchpoints, this
should not happen. It looks as if the target has not been properly
configured. Could someone point me to the appropriate configuration
settings and what the correct values should be for a processor that
natively supports read watchpoints?

Note that read watchpoints do work fine if the value has not changed
since the breakpoint was set. Also, the serial protocol packet
received looks like "T05watch:000014ec;" in one specific test when the
read watchpoint is hit.

Thanks,
Siva
-- 
In the end, everything is a gag.
           Charlie Chaplin


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]