| |||
| Home > Accessing and managing symbols with armlink > Load$$ execution region symbols | |||
The linker performs an extra address assignment and relocation pass for relocations that refer to load addresses after RW compression. This delayed relocation permits more information about load addresses to be used in linker-defined symbols.
Load$$ symbols
apply only to execution regions, and region_nameLoad$$LR$$ symbols
apply only to load regions.load_region_name
The following table shows the symbols that the linker generates
for every Load$$ execution region present in
the image. All the symbols refer to execution addresses after the
C library is initialized.
Table 5. Load$$ execution region symbols
| Symbol | Description |
|---|---|
Load$$ | Load address of the region. |
Load$$ | Region length in bytes. |
Load$$ | Address of the byte beyond the end of the execution region. |
Load$$ | Address of the RO output section in this execution region. |
Load$$ | Length of the RO output section in bytes. |
Load$$ | Address of the byte beyond the end of the RO output section in the execution region. |
Load$$ | Address of the RW output section in this execution region. |
Load$$ | Length of the RW output section in bytes. |
Load$$ | Address of the byte beyond the end of the RW output section in the execution region. |
Load$$ | Load address of the ZI output section in this execution region. |
Load$$ | Load length of the ZI output section in bytes. The Load Length of ZI is zero unless Load
Length = |
Load$$ | Load address of the byte beyond the end of the ZI output section in the execution region. |
All symbols in this table refer to load addresses before the C library is initialized. Be aware of the following:
The symbols are absolute because section-relative symbols can only have execution addresses.
The symbols take into account RW compression.
The symbols do not include ZI output section because it does not exist before the C library is initialized.
All relocations from RW compressed execution regions must be performed before compression, because the linker cannot resolve a delayed relocation on compressed data.
If the linker detects a relocation from an RW-compressed region to a linker-defined symbol that depends on RW compression, then the linker disables compression for that region.
Any zero bytes written to the file are visible. Therefore, the Limit and Length values must take into account the zero bytes written into the file.