<bp-manager.cr>.trace <bp-manager.cycle>.break
Simics Reference Manual  /  3 Commands  /  3.2 Command List  / 

<bp-manager.cr>.wait-for

Synopsis

<bp-manager.cr>.wait-for [object] ("name"|number|-all) [value] [mask] [-r] [-w] [-only-changes] [-reverse] [-always] [timeout] [timeout-rt]

Description

Postpones execution of a script branch until the specified control register update occurs.

The name or number parameter specifies which control register is considered. The available control registers depend on the simulated target. If the -all flag is specified, all registers are considered.

If -r is specified, only register read accesses are considered. If -w is specified, only register write accesses are considered. The default is to consider both reads and writes.

If -only-changes is specified, only write accesses that change the register value are considered. In this case, if mask is specified, only changes affecting this mask of the register are considered.

If value is specified, only write accesses that results in the register having this value are considered, or read accesses when the register has this value. If mask is specified, only this mask of the register and given value are considered.

If no processor object is specified, the currently selected processor is used.

If timeout is a positive number, the command will run for at most that many seconds of virtual time.

If timeout-rt is a positive number, the command will run for at most that many seconds of real time.

A time-out will be signaled by throwing a CLI exception, which can be captured using try/except in order to take specific action, or to let it pass unhandled.

The command will by default only wait for events that occur when the simulation is running forward. To wait for events in the reverse direction use the -reverse flag. Similarly, the -always flag tells the command to wait for events in both simulation directions.

If object is provided, then the breakpoint functionality is added on that object.

Provided By

bp-manager
<bp-manager.cr>.trace <bp-manager.cycle>.break