HP Fortran Programmer Guide (766160-001, March 2014)
Example 4 % f90 +hugecommon=results pcvals.f90
places the COMMON block named results into a huge data segment. +hugecommonis especially
useful when a program contains several different COMMON blocks that together occupy more
than two gigabytes but individually occupy less than two gigabytes. In this situation, the largest
COMMON blocks could be placed in a huge data segment when the program is compiled by
specifying their names in multiple +hugecommon options.
If a common block is specified as huge in one object file, it must be specified huge in all object
files. If it is not, the program will fail to link.
NOTE: PA2.0W objects cannot be combined with 32-bit object files. 64-bit applications will
only execute on PA8000-based systems.
+hugesize instructs the compiler to place COMMON blocks that are
larger than the specified size into a huge data segment. The format for
this option is: +hugesize=n
+hugesize
where n is the size in kilobytes (1024 bytes).
The default is to place COMMON blocks larger than two gigabytes
(2147483648 bytes) into huge data segments; that is,
+hugesize=2097152 is the default.
For example: % f90 +hugesize=1024 hello.f90
specifies that COMMON blocks larger than 1048576 bytes (1
megabyte) should be placed into a huge data segment.
If a common block is specified as huge in one object file, it must be
specified huge in all object files. If it is not, the program will fail to link.
PA2.0W objects cannot be combined with 32-bit object files. 64-bit
applications will only execute on PA8000-based systems.
NOTE: +hugesizeand +hugecommon options are not valid on HP
Itanium ®-based systems.
+i2 changes 4-byte integer and logical constants, intrinsics, and user
variables to 2-byte integers (rather than the 4-byte default).
+i2
+i8 changes 4-byte integer and logical constants, intrinsics, and user
variables to 8-byte integers (rather than the 4-byte default).
+i8
Specifies incremental linking. This option is valid only for 64-bit links.+ild
If the output file does not exist, or if it was created without the +ild option,
the linker performs an initial incremental link. The output file produced
is suitable for subsequent incremental links. The incremental link option
is valid for both executable and shared library links. It is not valid for
relocatable links, options (or tools) that strip the output module, and
certain optimization options. See ld(1)for more information.
Perform an initial incremental link, regardless of the output load module.
This option is valid only for 64-bit links.
+ildrelink
In certain situations during incremental linking (for example, internal
padding space is exhausted), the incremental linker is forced to perform
an initial incremental link. The +ildrelinkoption allows you to avoid
such unexpected initial incremental links by periodically rebuilding the
output file.
-I specifies a directory where .mod files and files named in the INCLUDE
line or in #include directives may be found if their name is a relative
-Idirectory
pathname—that is, does not begin with a slash (/). Directories are
searched in the following order:
• The current source directory—that is, the directory containing the file
with the INCLUDEline or #include.
• Directories specified by the -Ioption, in the order specified
Command-line options 29