;
BREAKPOINT -- Sets a breakpoint.
FORMAT
| Exactly one from this column. | None, any, or all from |
| | this column. |
| | |
| routine-name | |
| statement-id | -Do action-list |
Breakpoint | -Exit | -Trace |
| -Here | -After integer |
| -VA address | |
| -VA routine-name\offset | |
| | |
REQUIRED ARGUMENT
The BREAKPOINT command must be followed by exactly one option from the
following list:
routine-name Identifies where DEBUG will set a breakpoint. This must be
either a routine-name by itself or a statement-id. If you
specify a routine-name by itself, DEBUG sets the breakpoint
just before the first executable statement in the named
routine. Don't forget that a routine-name by itself must
end with a backslash (\).
-Exit Sets a breakpoint on the routine exit. (Note, each routine
has only one physical exit even though it may have multiple
RETURN statements. DEBUG sets the breakpoint on the
physical exit only.)
-Here Sets a breakpoint at the current run environment location.
Any user environment specification is ignored.
-VA Allows you to set a breakpoint on a virtual address. -VA
must be followed by one of the following two subarguments:
address a virtual address. By default, DEBUG
will view the number you enter as a
decimal value, but you can change the
base to hexadecimal or octal by
preceding the number with 16# or 8#,
respectively.
routine-name\offset a routine-name followed by an integer
offset (in bytes) from the beginning
of the routine also provides a
virtual address.
OPTIONAL ARGUMENTS
After the one mandatory argument, you can optionally specify zero, one, two,
or all three of the following arguments:
-Do Causes DEBUG to execute the action-list when the break occurs.
-Trace Prevents the breakpoint from stopping program execution. Instead,
DEBUG prints a message that identifies the tracepoint, and
executes any action-list that you have given (see the -DO option).
Target program execution continues.
-After DEBUG maintains a "hit" count for every breakpoint. The hit count
measures how many times a statement is executed. (That is, the
hit count is incremented each time the statement at that
breakpoint is executed.) You must supply an integer argument to
-After. When the hit count is less than the integer, the
breakpoint is not activated. When the hit count equals the
integer, the break is activated, and the hit count is reset to
zero. If you never specify -AFTER in a DEBUG session, the default
value of the integer is 1.
The integer you supply will not change unless you change it. For
example, if you specify -AFTER 3, then program breaks will occur
for the third, sixth, ninth, etc. times that the statement is
executed.
DESCRIPTION
Use the BREAKPOINT command to set a breakpoint. The breakpoint always
occurs immediately before your program executes the statement,
exit, or routine where you set the break. For example, if you set
a breakpoint at line 100, then the program will halt just before it
executes the statement at line 100. If you set a breakpoint at a
routine, DEBUG executes the routine prolog (which establishes the
addressing environment, allocates local variables, etc.), but halts
before executing the first user statement of the routine.
If you specified an action-list with the breakpoint, DEBUG invokes
the commands in the action-list. DEBUG then checks to see if the
breakpoint is a trace. If it is a trace, DEBUG prints a message notifying
you that the break occurred, and execution continues. If the breakpoint
is not a trace, DEBUG requests a command.
Use the LIST command to learn the positions of all active breakpoints. Use
the DELETE command to remove one or more breakpoints.
For full details, see Chapter 3 of the DOMAIN Language Level Debugger
Reference manual.