4.7. Prohibited regions

Tracing of regions of code can be prohibited. Entry to a prohibited region can occur for the following reasons:

When the processor is executing code from a prohibited region, the PTM must not output any information about program execution. Behavior of the PTM when the processor is in a prohibited region describes how the PTM behaves when the processor is in a prohibited region.

Normally, if tracing is enabled when the processor enters a prohibited region:

In the unusual case where the deassertion of one or more of NIDEN, DBGEN or SPNIDEN causes entry to the prohibited region, tracing stops and if necessary the PTM generates an atom packet to output any atoms it has assembled. The PTM might not generate a branch address packet or any waypoint update packet to indicate entry to the prohibited region.

Note

When a change of one or more of NIDEN, DBGEN or SPNIDEN causes entry to or exit from a prohibited region, the exact time of that entry or exit is implementation specific, and might not be until a waypoint occurs.

When the processor leaves the prohibited region, if tracing is enabled tracing restarts. The PTM treats the first instruction executed as the target of a waypoint, and generates an I-sync packet that outputs this address. Typically, this address is the target of a waypoint, because processing normally leaves a prohibited region by executing an indirect branch instruction.

Copyright © 1999-2002, 2004-2008, 2011 ARM. All rights reserved.ARM IHI 0035B
Non-ConfidentialID060811