3.1. Instruction trace

If enabled, this trace source generates one record for every instruction being executed.

Records (lines) of the instruction trace provide related information in the following command syntax:

<time> <scale> [IT|IS] (<inst_id>) <addr> <opcode> [A|T|X] <mode>_<security> : <disasm>

The fields have the following meaning:


Timestamp (decimal value).


Unit for the previous field <time>. clk is used to indicate the timestamp is not related to real time, but an increasing count.


This field set to IT indicates that the instruction passed the condition code (taken). This field set to IS indicates that the instruction failed the condition code (skipped).


The tick count of this core. This is equivalent to the number of instructions executed, except for certain instructions like WFI/WFE (decimal value).


Address from where this instruction was fetched, in hexadecimal format (virtual address).


16-bit/32-bit hexadecimal opcode of the instruction.


Current instruction set:

  • A represents an ARM instruction

  • T represents a Thumb instruction

  • X represents a Thumb-2EE instruction.


Processor execution mode (svc, irq, fiq, usr, mon, sys, abt, und).


Processor security state (s or ns).


Disassembly of the instruction executed.

Copyright © 2010 ARM Limited. All rights reserved.ARM DUI 0532A