3.10.2. Instructions for controlling the Instrumentation resources

Both the ARM and Thumb instruction sets reserve twelve instructions for use as Instrumentation instructions. These instructions are part of the Debug hint (DBG) part of the NOP‑compatible hint space. The Thumb and ARM encodings of these instructions are:

Encoding T1ARMv7 (executes as NOP in ARMv6T2)
DBG<c> #<option>
 
15141312111098765432101514131211109876543210
111100111010(1)(1)(1)(1)10(0)0(0)0001111Hint
Encoding A1ARMv7 (executes as NOP in ARMv6K and ARMv6T2)
DBG<c> #<option>
 
313029282726252423222120191817161514131211109876543210
cond001100100000(1)(1)(1)(1)(0)(0)(0)(0)1111Hint

For more information see the ARM Architecture Reference Manual.

In the DBG instruction, the value of the Hint field determines the Instrumentation resource operation.

Hint field encodings for the DBG Instrumentation instructions

Table 3.11 shows the hint field encodings for the DBG Instrumentation instructions. These encodings are the same for the ARM and Thumb‑2 instruction sets.

Table 3.11. Hint field encodings for the Instrumentation instructions

Hint valueEffect of instruction
0x0Set Resource 1
0x1Set Resource 2
0x2Set Resource 3
0x3Set Resource 4
0x4Clear Resource 1
0x5Clear Resource 2
0x6Clear Resource 3
0x7Clear Resource 4
0x8Pulse Resource 1
0x9Pulse Resource 2
0xAPulse Resource 3
0xBPulse Resource 4

Note

The DBG hint instructions are defined in the ARMv7 architecture specification, see the ARM Architecture Reference Manual. This Architecture Specification only defines the twelve field values given in Table 3.11 for use with PTM implementations. These definitions are the same as those used in version 3.4 of the ETM Architecture Specification.

Copyright © 1999-2002, 2004-2008 ARM Limited. All rights reserved.ARM IHI 0035A