3.3.4. TraceEnable Include/exclude control

The Include/exclude bit in the TraceEnable Control Register controls how the TraceEnable mechanism uses ARC. It selects one of two modes of operation:

Include

In include mode, you select ARCs to define regions of code to include in the trace. When an ARC matches, all instructions in the address range are traced. Because PTM trace only explicitly traces waypoints, this means that the PTM traces all blocks of instructions that include any instruction in the address range.

Exclude

In exclude mode, you select ARCs to define regions of code to exclude from the trace. The ARC is tested at each waypoint. At that point, the PTM considers the block of instructions between the previous waypoint and the current waypoint:

  • if the ARC excludes all of that block of instructions from tracing then the PTM does not generate any trace

  • otherwise, the PTM traces that block of instructions.

This means that, in exclude mode, you might find some instructions traced unexpectedly. A block of instructions between two waypoints is excluded from tracing only if the excluded ARC covers the entire block.

You can select multiple ARCs for Include/exclude control, to include or exclude multiple blocks of code. However, you cannot mix include blocks and exclude blocks in a single trace run.

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