About mapping symbols
Mapping symbols are generated by the compiler and assembler to identify inline transitions between code and data at literal pool boundaries, and between A32 code and T32 code, such as A32/T32 interworking veneers.
The mapping symbols are:
Start of a sequence of A32 instructions.
Start of a sequence of T32 instructions.
Start of a sequence of data items, such as a literal pool.
- Start of A64 code.
armlink generates the
$d.realdata mapping symbol to
communicate to fromelf that the data is from a non-executable section.
Therefore, the code and data sizes output by
are the same as the output from
armlink --info sizes,
Code (inc. data) RO Data x y z
In this example, the
y is marked with
Data is marked with
NoteSymbols beginning with the characters
$vare mapping symbols related to VFP and might be output when building for a target with VFP. Avoid using symbols beginning with
$vin your source code.
Be aware that modifying an executable image with the
--elf --strip=localsymbols command removes all mapping symbols from the