Descriptions of exception handling use the
following terms.
- Preemption: An exception can
preempt the current execution if its priority is higher than the current execution
priority. When one exception preempts another, the exceptions are called nested
exceptions.
- Return: This occurs when the
exception handler is completed. The processor pops the stack and restores the processor
state to the state it had before the interrupt occurred.
Tail-Chaining: This mechanism
speeds up exception servicing. On completion of an exception handler or during the
return operation, if there is a pending exception that meets the requirements for
exception entry, then the stack pop is skipped and control transfers directly to the
new exception handler.
- Late Arriving Interrupts: This
mechanism speeds up preemption. If a higher priority exception occurs during state
saving for a previous exception, the processor switches to handle the higher priority
exception and initiates the vector fetch for that exception. State saving may be
affected by the late arrival depending on the stacking requirements of the original
exception and the late-arriving exception. On return from the exception handler of the
late-arriving exception, the normal tail-chaining rules apply.