2.5.4 Fault Handling
Faults are a subset of the exceptions, see 2.5.3 Exception Model. The following generates a fault:
- a bus error on:
- an instruction fetch or vector table load
- a data access
- an internally-detected error such as an undefined instruction
- attempting to execute an instruction from a memory region marked as Non-Executable (XN).
- attempting to execute an instruction while the EPSR T-bit is clear. For example, as the result of an erroneous BX instruction, or a vector fetch from a vector table entry with bit[0] clear.
- an MPU fault because of a privilege violation or an attempt to access an unmanaged region.