Individual Interrupt Control
7-17
Interrupts
7.3.3.3
Returning From Maskable Interrupts (Interrupt Return Pointer Register–IRP)
The interrupt return pointer register (IRP) contains the return pointer that
directs the CPU to the proper location to continue program execution after pro-
cessing a maskable interrupt. A branch using the address in the IRP (B IRP)
in your interrupt service routine returns to the program flow when interrupt
servicing is complete. Example 7–9 shows how to return from a maskable
interrupt.
Example 7–9. Code to Return from a Maskable Interrupt
B
IRP
; return, moves PGIE to GIE
NOP
5
; delay slots
The IRP contains the 32-bit address of the first execute packet in the program
flow that was not executed because of a maskable interrupt. Although you can
write a value to this register, any subsequent interrupt processing may over-
write that value. Figure 7–11 shows the IRP register.
Figure 7–11.Interrupt Return Pointer (IRP)
31
16
IRP
R, W, +x
15
0
IRP
R, W, +x
Legend: R = Readable by the MVC instruction
W = Writeable by the MVC instruction
+x = Value undefined after reset