Everything

-start


< Optimizing Linkage Editor (rlink) Options / Section Options >

[Format]

-start = <sub> [,...]
          <sub>: [(] <section name> [{ : | , } <section name> [,...] ] [)] [,...] [ / <address>]

 

-

[Default]

The section is allocated at 0.

[Description]

-

Specifies the start address of the section. Specify an address as the hexadecimal.

-

The section name can be specified with wildcards "*". Sections specified with wildcards are expanded according to the input order.

-

Two or more sections can be allocated to the same address (i.e., sections are overlaid) by separating them with a colon ":".

-

Sections specified at a single address are allocated in the specification order.

-

Sections to be overlaid can be changed by enclosing them by parentheses "()".

-

Objects in a single section are allocated in the specification order of the input file or the input library.

-

If no address is specified, the section is allocated at 0.

-

A section which is not specified with the start option is allocated after the last allocation address.

[Examples]

This example shows how sections are allocated when the objects are input in the following order (names enclosed by parentheses are sections in the objects).

-

tp1.obj(A,D1,E) -> tp2.obj(B,D3,F)) -> tp3.obj(C,D2,E,G) -> lib.lib(E)

-

-

-start=A,B,E/400,C,D*:F:G/8000

-

Sections C, F, and G separated by colons are allocated to the same address.

-

Sections specified with wildcards "*" (in this example, the sections whose names start with D) are allocated in the input order.

-

Objects in the sections having the same name (E in this example) are allocated in the input order.

-

An input library's section having the same name (E in this example) as those of input objects is allocated after the input objects.

 

-

-start=A,B,C,D1:D2,D3,E,F:G/400

-

The sections that come immediately after the colons (A, D2, and G in this example) are selected as the start and allocated to the same address.

 

-

-start=A,B,C,(D1:D2,D3),E,(F:G)/400

-

When the sections to be allocated to the same address are enclosed by parentheses, the sections within parentheses are allocated to the address immediately after the sections that come before the parentheses (C and E in this example).

-

The section that comes after the parentheses (E in this example) is allocated after the last of the sections enclosed by the parentheses.

[Remarks]

-

When form={object | relocate | library} or strip is specified, this option is unavailable.

-

Parentheses cannot be nested.

-

One or more colons must be written within parentheses. Parentheses cannot be written without a colon.

-

Colons cannot be written outside of parentheses.

-

When this option is specified with parentheses, optimization with the linkage editor is disabled.