Tools > Create Watchpoint
Defines or modifies an unconditional data watchpoint, or a conditional data watchpoint.
TotalView only supports
modify watchpoints. That is, TotalView only triggers the watchpoint if your program modifies the memory location. If the same value is written back to the location, the watchpoint does not trigger.
When a watchpoint triggers, the thread’s PC points to the instruction after the instruction that caused the watchpoint to trigger. In some cases, where a memory store instruction is the last instruction in the source line, the PC will point to the source line after the source line that contains the triggering instruction.
If TotalView displays a question asking if you really want to set a watchpoint on non-global memory, it is telling you that the memory is contained within memory that can change for reasons other than the program changing a variable’s value. For example, you may be setting a watchpoint on stack memory. When the routine on the stack is popped, it will probably be overwritten by a new stack frame, and this change will have nothing to do with your program changing a value.
This message isn’t telling you not to do this. Instead, TotalView is making you aware that change could occur for other reasons.
- Related Topics