SLAU723A October 2017 ā October 2018 MSP432E401Y , MSP432E411Y
Exception return occurs when the processor is in handler mode and executes one of the following instructions to load the EXC_RETURN value into the PC:
EXC_RETURN is the value loaded into the LR on exception entry. The exception mechanism relies on this value to detect when the processor has completed an exception handler. The lowest 5 bits of this value provide information on the return stack and processor mode. Table 1-20 shows the EXC_RETURN values with a description of the exception return behavior.
EXC_RETURN bits 31:5 are all set. When this value is loaded into the PC, it indicates to the processor that the exception is complete, and the processor initiates the appropriate exception return sequence.
| EXC_RETURN[31:0] | Description |
|---|---|
| 0xFFFF.FFE0 | Reserved |
| 0xFFFF.FFE1 |
Return to handler mode. Exception return uses floating-point state from MSP. Execution uses MSP after return. |
| 0xFFFF.FFE2 to 0xFFFF.FFE8 | Reserved |
| 0xFFFF.FFE9 |
Return to thread mode. Exception return uses floating-point state from MSP. Execution uses MSP after return. |
| 0xFFFF.FFEA to 0xFFFF.FFEC | Reserved |
| 0xFFFF.FFED |
Return to thread mode. Exception return uses floating-point state from PSP. Execution uses PSP after return. |
| 0xFFFF.FFEE to 0xFFFF.FFF0 | Reserved |
| 0xFFFF.FFF1 |
Return to handler mode. Exception return uses nonfloating-point state from MSP. Execution uses MSP after return. |
| 0xFFFF.FFF2 to 0xFFFF.FFF8 | Reserved |
| 0xFFFF.FFF9 |
Return to thread mode. Exception return uses nonfloating-point state from MSP. Execution uses MSP after return. |
| 0xFFFF.FFFA to 0xFFFF.FFFC | Reserved |
| 0xFFFF.FFFD |
Return to thread mode. Exception return uses nonfloating-point state from PSP. Execution uses PSP after return. |
| 0xFFFF.FFFE to 0xFFFF.FFFF | Reserved |