This qualifier selects between natural alignment (for example, REAL*8 entities start on double-word boundaries) or nonalignment of data elements in COMMON blocks.
Alignment (/natural
), the kfort
default,
requires that variables and arrays will start on boundaries that
correspond to their size. Items that take up two words (for example,
COMPLEX arrays) will start on double-word boundaries. Single-word
items (for example, REAL variables) will start on word boundaries.
Half-word items (for example, INTEGER*2 variables) will start on
half-word boundaries. When used in conjunction with the
/aggressive
qualifier, /natural
will cause
KAP to insert additional spacing variables into COMMON blocks to
preserve the alignment. Natural alignment can improve program speed
by making memory access simpler.
The kapf
default /nonatural
causes
variables and arrays to be packed tightly into COMMON blocks. This
can reduce memory usage, but slow the program.