Summary of sections
The compiler places code and data into sections. Based on a configuration specified in the linker configuration file, ILINK places sections in memory.
This table lists the ELF sections and blocks that are used by the IAR build tools:
Section | Description |
|---|---|
Holds zero-initialized static and global variables. | |
Holds the stack used by C or C++ programs. | |
Holds the startup code. | |
Holds static and global initialized variables. | |
Holds initial values for | |
Holds the heap. | |
Holds the | |
Holds the locale table for the selected locales. | |
Holds the TLS area for the primary thread. | |
Holds initial values for the TLS area. | |
Holds a table of dynamic initialization functions. | |
Holds functions and variables for the SiFive ITIM RAM area. | |
Holds jump tables for switch statements. | |
Holds | |
Holds | |
Holds a table of dynamic initialization functions. | |
Holds constant data. | |
Holds | |
Holds thread-local zero-initialized static and global variables for the primary thread. | |
Holds thread-local initialized static and global variables for the primary thread. | |
Holds the program code. | |
Holds |
Other sections
In addition to the ELF sections used for your application, the tools use a number of other ELF sections for a variety of purposes:
Sections starting with
.debuggenerally contain debug information in the DWARF formatSections starting with
.iar.debugcontain supplemental debug information in an IAR formatThe section
.commentcontains the tools and command lines used for building the fileSections starting with
.relor.relacontain ELF relocation informationThe section
.strtabcontains the names of the symbol in the symbol table