Fortran User's Guide

-dalign

Align COMMON block data and generate faster multi-word load/stores.

    SPARC: 77/90

This flag changes the data layout in COMMON blocks (and EQUIVALENCE classes), and enables the compiler to generate faster multi-word load/stores for that data.

The data layout effect is that of the -f flag: double- and quad-precision data in COMMON blocks and EQUIVALENCE classes are laid out in memory along their "natural" alignment, which is on 8-byte boundaries (or on 16-byte boundaries for quad-precision when compiling for 64-bit environments with -xarch=v9 or v9a). The default alignment of data in COMMON blocks is on 4-byte boundaries. The compiler is also allowed to assume natural alignment and generate faster multi-word load/stores to reference the data.


Note -

-dalign may result in nonstandard alignment of data, which could cause problems with variables in EQUIVALENCE or COMMON and may render the program non-portable if -dalign is required.


Using both -dbl and -dalign also causes default INTEGER variables to be 8-byte aligned and 64-bits. Also:"-xtypemap=real:x,double:y,integer:64"

If you compile one subprogram with -dalign, compile all subprograms of the program with -dalign. This option is included in the -fast option.