Skip to main content

IAR Embedded Workbench for Arm 9.70.x

__nested

In this section:
Syntax

See Syntax for object attributes.

Description

In 32-bit mode, the __nested keyword modifies the enter and exit code of an interrupt function to allow for nested interrupts. This allows interrupts to be enabled, which means new interrupts can be served inside an interrupt function, without overwriting the SPSR and return address in R14. Nested interrupts are only supported for __irq declared functions.

Note

The __nested keyword requires the processor mode to be in either User or System mode.

In 64-bit mode, the __nested keyword modifies the enter and exit of an exception function to allow for nested exceptions. See Exception functions for 64-bit mode.

Example
__irq __nested __arm void interrupt_handler(void);
See also

Nested interrupts and ‑‑align_sp_on_irq