beautypg.com

Linker symbols, Sample linker command file, Linker symbols sample linker command file – Zilog Z8F0130 User Manual

Page 276: Table 17

background image

Using the ANSI C-Compiler

UM013037-1212

252

Zilog Developer Studio II – Z8 Encore!
User Manual

Linker Symbols

The default linker command file defines some system symbols, which are used by the C
start-up file to initialize the stack pointer, clear the uninitialized variables to zero, set the
initialized variables to their initial value, set the heap base, and so on. The following table
shows the list of symbols that can be defined in the linker command file, depending on the
compilation memory model that you selected.

Sample Linker Command File

The sample default linker command file for a project using the large dynamic compilation
model is discussed here as a good example of the contents of a linker command file in
practice and how the linker commands it contains work to configure your load file. The
default linker command file is automatically generated by the ZDS II IDE. If the project
name is

test.zdsproj

, for example, the default linker command file name is

test_debug.linkcmd

. You can add additional directives to the linking process by spec-

Table 51. Linker Symbols

Symbol Description

_low_neardata

Base of near_data segment after linking

_len_neardata

Length of near_data segment after linking

_low_near_romdata

Base of the ROM copy of near_data segment after linking

_low_fardata

Base of far_data segment after linking

_len_fardata

Length of far_data segment after linking

_low_far_romdata

Base of the ROM copy of far_data segment after linking

_low_pramseg

Base of pramseg segment after linking

_len_pramseg

Length of pramseg segment after linking

_low_pram_romdata

Base of the ROM copy of pramseg segment after linking

_low_nearbss

Base of near_bss segment after linking

_len_nearbss

Length of near_bss segment after linking

_low_farbss

Base of far_bss segment after linking

_len_farbss

Length of far_bss segment after linking

_far_stack

Top of stack for large model is set as highest address of EData

_near_stack

Top of stack for small model is set as highest address of RData

_far_heapbot

Base of heap for large model is set as highest allocated EData address

_near_heapbot

Base of heap for small model is set as highest allocated RData
address

_far_heaptop

Top of heap for large model is set as highest address of EData

_near_heaptop

Top of heap for small model is set as highest address of RData