< Optimizing Linkage Editor (rlink) Options / Verify Options >
-cpu={ <memory type> = <address range> [,...] | STRIDE} <memory type>: { ROm | RAm | FIX } <address range>: <start address> - <end address> |
When cpu=stride is not specified, a section larger than the specified range of addresses leads to an error. |
When cpu=stride is specified, a section larger than the specified range of addresses is allocated to the next area of the same memory type or the section is divided. |
The result is normal when D1 and D2 are respectively allocated within the ranges from 100 to 1FF and from 200 to 2FF. If they are not allocated within the ranges, an error will be output. |
The result is normal when D1 and D2 are allocated within the ROM area (regardless of whether the section is divided). A linkage error occurs when they are not allocated within the ROM area even though the section is divided. |
Specify an address range in which a section can be allocated in hexadecimal notation. The memory type attribute is used for the inter-module optimization. |
FIX for <memory type> is used to specify a memory area where the addresses are fixed (e.g. I/O area). |
If the address range of <start>-<end> specified for FIX overlaps with that specified for another memory type, the setting for FIX is valid. |
When <memory type> is ROM or RAM and the section size is larger than the specified memory range, sub-option STRIDE can be used to divide a section and allocate them to another area of the same memory type. Sections are divided in module units. |
Checks that section addresses are allocated within the range from 0 to FFFF or from 10000 to 1FFFF. |
When section addresses are not allocated within the range from 100 to 1FF, the linkage editor divides the sections in module units and allocates them to the range from 400 to 4FF. |