5.2.2. Exception occurs immediately after a waypoint instruction

If an exception occurs immediately after the processor has successfully executed a waypoint instruction, then the PTM traces the exception by generating only an exception branch address packet.

Table 5.2 shows an example of tracing an exception that occurs immediately after a waypoint instruction. The PTM traces the exception in this way because nothing is executed between the BEQ at 0x1004 and the instruction at the IRQ vectors. No address comparators match for the instruction at 0x1004 until the processor returns from the exception handler to the instruction at 0x1004.

Table 5.2. Tracing an exception immediately after execution of a waypoint instruction

AddressInstructionTrace, if any, with explanation
0x0F00BEQ 0x1004This waypoint is executed. The PTM traces it by generating an E atom.
-IRQ occurs

PTM issues an exception branch address packet, indicating an IRQ, with a destination address of 0x0018, the IRQ vector address [a].

The last instruction executed is the waypoint instruction at 0x0F00.

0x0018LDR PC, loads 0x3000Branch address packet with destination 0x3000. This implies an E atom. This is a normal indirect branch.
0x3000(IRQ handler)Traced normally. Depending on the instruction stream and TraceEnable configuration, the PTM might generate some packets.

[a] If the PTM is holding any assembled atoms it outputs these in an atom header before generating the exception branch address packet. This means it always outputs the E atom for the waypoint instruction that was just executed before outputting the exception branch address packet.

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