The following commands control obsolete instruction-related breakpoints:
obsolete_stopi_breakpoint_definition_command
: stopi [ expression ]
[ thread_filter ] [ match_address ] [ logical_filter ]
obsolete_tracei_breakpoint_definition_command
: tracei [ expression ]
[ thread_filter ] [ match_address ] [ logical_filter ]
obsolete_wheni_breakpoint_definition_command
: wheni [ expression ]
[ thread_filter ] [ match_address ] [ logical_filter ]
match_address
The stopi, tracei, and wheni forms of breakpoint definition are similar to the corresponding stop, trace, and when forms, with the following differences:
They have a different initial keyword.
If you specify a variable name, then breakpoint triggers only when the value of the variable changes (and the logical and thread filters are true).
The debugger implementation of tracei for detecting variable changes tends to be slow: at each place where control might be stopped, as specified by the where modifier and filters, the value of the variable is compared to the value remembered at the time execution began.
Most important, the variable change and filter tests are performed after every instruction is executed, making these definitions especially demanding on program performance.
The order of filters and modifiers is different.
The at keyword is followed by an address in these commands, instead of a line number.