You copied the Doc URL to your clipboard.


Adds the EXECONLY AREA attribute to all code sections.


The EXECONLY AREA attribute causes the linker to treat the section as execute-only.

It is the user's responsibility to ensure that the code in the section is safe to run in execute-only memory. For example:

  • The code must not contain literal pools.
  • The code must not attempt to load data from the same, or another, execute-only section.


This option is only supported for:

  • Processors that support the ARMv8-M.mainline or ARMv8-M.baseline architecture.
  • Processors that support the ARMv7-M architecture, such as Cortex-M3, Cortex-M4, and Cortex-M7.
  • Processors that support the ARMv6-M architecture.


    ARM has only performed limited testing of execute-only code on ARMv6-M targets.