The linker defines some symbols that are reserved by Arm®, and that you can access if required.
Symbols that contain the character sequence
$$, and all other external names containing the sequence
$$, are names reserved by Arm.
You can import these symbolic addresses and use them as relocatable addresses by your
assembly language programs, or refer to them as
from your C or C++ source code.
Be aware that:
- Linker-defined symbols are only generated when your code references them.
If execute-only (XO) sections are present, linker-defined symbols are defined with the following constraints:
- XO linker defined symbols cannot be defined with respect to an empty region or a region that has no XO sections.
- XO linker defined symbols cannot be defined with respect to a region that contains only RO sections.
- RO linker defined symbols cannot be defined with respect to a region that contains only XO sections.