Microchip Technology XC8 Standard Compiler (Workstation) SW006021-1 SW006021-1 ユーザーズマニュアル
製品コード
SW006021-1
MPLAB
®
XC8 C Compiler User’s Guide
DS52053B-page 258
2012 Microchip Technology Inc.
6.4.9.3.9
Ovrld
A psect defined as ovrld will have the contribution from each module overlaid, rather
than concatenated at link time. This flag in combination with the abs flag (see
Section 6.4.9.3.1 “Abs”) defines a truly absolute psect; i.e., a psect within which any
symbols defined are absolute.
than concatenated at link time. This flag in combination with the abs flag (see
Section 6.4.9.3.1 “Abs”) defines a truly absolute psect; i.e., a psect within which any
symbols defined are absolute.
6.4.9.3.10
Pure
The pure flag instructs the linker that this psect will not be modified at runtime and may
therefore, for example, be placed in ROM. This flag is of limited usefulness since it
depends on the linker and target system enforcing it.
therefore, for example, be placed in ROM. This flag is of limited usefulness since it
depends on the linker and target system enforcing it.
6.4.9.3.11
Reloc
The reloc flag allows specification of a requirement for alignment of the psect on a
particular boundary. For example the flag reloc=100h would specify that this psect
must start on an address that is a multiple of 100h.
particular boundary. For example the flag reloc=100h would specify that this psect
must start on an address that is a multiple of 100h.
PIC18 instructions must be word aligned, so a reloc value of 2 must be used for any
psect that contains executable code. All other sections, and all sections for all other
devices, can use the default reloc value of 1.
psect that contains executable code. All other sections, and all sections for all other
devices, can use the default reloc value of 1.
6.4.9.3.12
Size
The size flag allows a maximum size to be specified for the psect, e.g., size=100h.
This will be checked by the linker after psects have been combined from all modules.
This will be checked by the linker after psects have been combined from all modules.
6.4.9.3.13
Space
The space flag is used to differentiate areas of memory which have overlapping
addresses, but which are distinct. Psects which are positioned in program memory and
data memory have a different space value to indicate that the program space address
0, for example, is a different location to the data memory address 0.
addresses, but which are distinct. Psects which are positioned in program memory and
data memory have a different space value to indicate that the program space address
0, for example, is a different location to the data memory address 0.
On all 8-bit PIC devices, program memory uses a space value of 0, and data space
memory uses a space of 1.
memory uses a space of 1.
Devices which have a banked data space do not use different space values to identify
each bank. A full address which includes the bank number is used for objects in this
space and so each location can be uniquely identified. For example a device with a
bank size of 0x80 bytes will uses address 0 to 0x7F to represent objects in bank 0, and
then addresses 0x80 to 0xFF to represent objects in bank 1, etc.
each bank. A full address which includes the bank number is used for objects in this
space and so each location can be uniquely identified. For example a device with a
bank size of 0x80 bytes will uses address 0 to 0x7F to represent objects in bank 0, and
then addresses 0x80 to 0xFF to represent objects in bank 1, etc.
6.4.9.3.14
Split
This flag can be assigned 0 or 1, or not specified. When assigned 0, the psect will never
be split by the assembly optimizer during optimizations. If assigned the value 1, the
psect may be split if other psect attributes allow it and the psect is too large to fit in avail-
able memory. If this flag is not specified, then the splitability of this psect is based on
whether the psect can be merged, see Section 6.4.9.3.8 “Merge”.
be split by the assembly optimizer during optimizations. If assigned the value 1, the
psect may be split if other psect attributes allow it and the psect is too large to fit in avail-
able memory. If this flag is not specified, then the splitability of this psect is based on
whether the psect can be merged, see Section 6.4.9.3.8 “Merge”.
6.4.9.3.15
With
The with flag allows a psect to be placed in the same page with another psect. For
example the flag with=text will specify that this psect should be placed in the same
page as the text psect.
example the flag with=text will specify that this psect should be placed in the same
page as the text psect.
The term withtotal refers to the sum of the size of each psect that is placed “with” other
psects.
psects.