Default Allocation Algorithm
7-53
Linker Description
7.12 Default Allocation Algorithm
The MEMORY and SECTIONS directives provide flexible methods for
building, combining, and allocating sections. However, any memory locations
or sections that you choose
not to specify must still be handled by the linker.
The linker uses default algorithms to build and allocate sections within the
specifications you supply. Subsections 7.12.1,
Allocation Algorithm, and
7.12.2,
General Rules for Output Sections, describe default allocation.
7.12.1 Allocation Algorithm
If you do not use the MEMORY and SECTIONS directives, the linker allocates
output sections as though the following definitions are specified.
Example 7–12. Default Allocation for TMS320C54x Devices
MEMORY
{
PAGE 0: PROG: origin = 0x0080
length = 0xFF00
PAGE 1: DATA: origin = 0x0080
length = 0xFF80
}
SECTIONS
{
.text:
PAGE = 0
.data:
PAGE = 0
.cinit:
PAGE = 0 ;cflag option only
.bss:
PAGE = 1
}
All .text input sections are concatenated to form a .text output section in the
executable output file, and all .data input sections are combined to form a .data
output section. The .text and .data sections are allocated into configured
memory on PAGE 0, which is the program memory space. All .bss sections are
combined to form a .bss output section. The .bss section is allocated into
configured memory on PAGE 1, which is the data memory space.
If the input files contain initialized named sections, the linker allocates them
into program memory following the .data section. If the input files contain
uninitialized named sections, the linker allocates them into data memory fol-
lowing the .bss section. You can override this by specifying an explicit PAGE
in the SECTIONS directive.
If you use a SECTIONS directive, the linker performs
no part of the default
allocation. Allocation is performed according to the rules specified by the
SECTIONS directive and the general algorithm described in subsection
7.12.2,
General Rules for Output Sections.
Summary of Contents for TMS320C54x
Page 38: ......
Page 39: ......
Page 40: ......
Page 41: ......
Page 42: ......
Page 43: ......
Page 44: ......
Page 45: ......
Page 46: ......
Page 47: ......
Page 48: ......
Page 49: ......
Page 50: ......
Page 51: ......
Page 52: ......
Page 53: ......
Page 54: ......
Page 55: ......
Page 56: ......
Page 57: ......
Page 58: ......
Page 59: ......
Page 60: ......
Page 61: ......
Page 62: ......
Page 276: ......
Page 277: ......
Page 278: ......
Page 279: ......
Page 280: ......
Page 281: ......
Page 282: ......
Page 283: ......
Page 284: ......
Page 285: ......
Page 286: ......
Page 287: ......
Page 288: ......
Page 289: ......
Page 290: ......
Page 291: ......
Page 292: ......
Page 293: ......
Page 294: ......
Page 295: ......
Page 296: ......
Page 297: ......
Page 298: ......
Page 299: ......
Page 300: ......
Page 301: ......
Page 302: ......