6.2 Special Symbol

The optimizing linker generates reserved symbols set to the values of the start addresses of each output section, and the first address beyond the end of each output section. If the user defines a symbol with the same name as one of these reserved symbols, then the optimizing linker will use the defined symbol, and will not generate its own.

The name of the reserved symbol with the value of the start address of a section is the name of that output section, preceded by the string "__s".

The name of the reserved symbol with the value of the first address after the end of a section is the name of that output section, preceded by the string "__e".

Below are shown the reserved sections and the special symbols corresponding to those sections.

Table 6.1

Special Symbol for Reserved Section

Reserved Section

Special Symbol for Reserved Section

.text

__s.text, __e.text

.bss

__s.bss, __e.bss

.zbss

__s.zbss, __e.zbss

.zbss23

__s.zbss23, __e.zbss23

.ebss

__s.ebss, __e.ebss

.ebss23

__s.ebss23, __e.ebss23

.tbss4

__s.tbss4, __e.tbss4

.tbss5

__s.tbss5, __e.tbss5

.tbss7

__s.tbss7, __e.tbss7

.tbss8

__s.tbss8, __e.tbss8

.sbss

__s.sbss, __e.sbss

.sbss23

__s.sbss23, __e.sbss23

.data

__s.data, __e.data

.zdata

__s.zdata, __e.zdata

.zdata23

__s.zdata23, __e.zdata23

.edata

__s.edata, __e.edata

.edata23

__s.edata23, __e.edata23

.tdata

__s.tdata, __e.tdata

.tdata4

__s.tdata4, __e.tdata4

.tdata5

__s.tdata5, __e.tdata5

.tdata7

__s.tdata7, __e.tdata7

.tdata8

__s.tdata8, __e.tdata8

.sdata

__s.sdata, __e.sdata

.sdata23

__s.sdata23, __e.sdata23

.const

__s.const, __e.const

.zconst

__s.zconst, __e.zconst

.zconst23

__s.zconst23, __e.zconst23

Caution

Only the symbols in the table for which there is a section in the post-linking executable file are generated.