HP Fortran Programmer's Guide (B3908-90031; September 2011)

Using Fortran directives
Compatibility directives
Chapter 9 215
Compatibility directives
HP Fortran supports the compiler directives listed in Table 9-2. These directives are provided for
compatibility with programs developed on the platforms listed in the table.
In fixed format, each directive must be preceded by the comment character C, !, or * and must begin in
column 1 of the source file. In free format, the directive must be preceded by the Fortran comment character
(!).
If an option or argument is included with the directive name, the compiler ignores the directive.
The following sections describes these directives in detail.
Controlling vectorization
HP Fortran can vectorize eligible program loops that operate on vectors. This optimization causes the
compiler to replace the loops with calls to selected routines in the Basic Linear Algebra Subroutine (BLAS)
library. You can use the *$* [NO]VECTORIZE directive to enable or disable vectorization. The compiler
considers the *$* VECTORIZE directive as a request to vectorize a loop. If the compiler determines that it
cannot profitably or safely vectorize the loop, it ignores the directive.
To use the vectorization directive, you must compile and link with the +Ovectorize option. The directive
applies to the beginning of the next loop and remains in effect for the rest of the program unit or until
superseded by a later directive. For more information about this option, see the Parallel Programming
Guide for HP-UX Systems.
Table 9-2 Compatibility directives recognized by HP Fortran
Vendor Directive
Cray DIR$ NO SIDE EFFECTS
DIR$ [NO]CONCUR
DIR$ IVDEP
FPP$ NODEPCHK
KAP *$* [NO]CONCURRENTIZE
*$* [NO]VECTORIZE
VA S T VD$ NODEPCHK