Debug Manual

Table Of Contents
Debug Commands
Debug Manual421921-003
4-11
Set Conditional Code Breakpoint
For more information about how to use the noft utility, see the nld Manual and the noft
Manual.
Set Conditional Code Breakpoint
The B command can set a conditional code breakpoint. A conditional code breakpoint
causes a process to enter the debug state when both the breakpoint location is
executed and a specified variable matches a predetermined condition. The conditional
form of the B command is:
address
is the code address where the breakpoint is to occur. For more information, see
Address Syntax on page 3-12. The address mode must follow the same guidelines
as those stated earlier in this section for specifying the code address when setting
an unconditional code breakpoint.
test-address
is the address of the variable to be tested. The syntax for test-address is the
same as the Address Syntax on page 3-12, but it is limited to only data locations
and the Q-mode syntax is not allowed. If test-address is an N mode address,
test-address refers to a 32-bit variable.
register
is a processor register. For more information, see Register Syntax on page 3-7.
For a TNS process, when registers R0 through R7 are specified, the values in the
registers are evaluated when the breakpoint is executed. Other registers are
evaluated to a memory location pointed by the registers when the breakpoint is
executed.
For a TNS/R process, any register except the floating-point registers can be used.
mask
is an expression. The mask parameter is logically ANDed with the value of the
register parameter or the value pointed to by the test-address parameter
and the constant parameter before the condition is tested. The comparison
values are treated as signed values. The value for mask is 32 bits if a TNS/R
register or an N mode test-address value is used; otherwise, the value is 16
bits.
B address
{, {test-address |register} [& mask] op constant[, ALL ]}
{ [, ALL ] , {test-address | register}[& mask]
op constant }