3.2.8. AArch32 execution modes

ARMv7 and earlier versions of the ARM architecture, define a set of named processor modes, including modes that correspond to different exception types. For compatibility, AArch32 state retains these processor modes.

Table 3.2 shows the AArch32 processor modes, and the Exception level of each mode.

Table 3.2. AArch32 processor modes and associated Exception levels

AArch32 processor modeEL3 usingSecurity stateException level
UserAArch32 or AArch64Non-secure or SecureEL0
System, FIQ, IRQ, Supervisor,AArch64Non-secure or SecureEL1
Abort, UndefinedAArch32Non-secureEL1
  SecureEL3
HypAArch32 or AArch64Non-secure onlyEL2
MonitorAArch32Secure onlyEL3

When the EL3 using column of Table 3.2 shows:

AArch64

The row refers to information shown in Figure 3.1.

AArch32

The row refers to information shown in Figure 3.2.

A processor mode name does not indicate the current Security state. To distinguish between a mode in Secure state and the equivalent mode in Non-secure state, the mode name is qualified as Secure or Non-secure. For example, a description of AArch32 operation in EL1 might relate to the Secure FIQ mode, or to the Non-secure FIQ mode.

Copyright © 2013, 2014 ARM. All rights reserved.ARM DDI 0488D
Non-ConfidentialID012914