f77(1) f77(1)
NAME
f77, fort77 - FORTRAN 77 compiler
SYNOPSIS
f77 [options] file ...
fort77 [options] file ...
DESCRIPTION
f77 is the HP-UX FORTRAN 77 compiler. The compiler accepts the
following types of file arguments:
+ Files that end with .f are compiled as FORTRAN 77 source
files. If each source compiles successfully, its
corresponding object file is left in the current directory in
a file whose name is that of the source, with .o substituted
for .f.
+ Files that end with .o, .a, and.sl are passed on to the linker
(see ld(1)) to be linked into the final program.
+ Other file types include:
.F Processed by the C preprocessor, then by the
compiler; see cpp(1)
.r Processed by the ratfor preprocessor, then by the
compiler; see ratfor(1)
.c Processed by the C compiler; see cc(1)
.s Processed by the assembler; see as(1)
fort77 provides a POSIX-compliant interface to the HP-UX FORTRAN 77
compiler. Except where indicated, functionality is identical to f77.
Options
f77 and fort77 recognize the following options:
+800 Provides 800-compatible mode for data
representation, data alignment, argument passing
conventions, and I/O. Use the +800 option for
compatibility with the pre-9.0 Series 800 FORTRAN
compiler.
-a Issue warnings for all non-ANSI (f77) features.
-A[{AaHhMmNnSs}]
Enforce conformity to the language standard, with
selected exceptions. By default, all HP FORTRAN
extensions to FORTRAN77 are allowed. If -A is
specified, only selected extensions are allowed.
Hewlett-Packard Company - 1 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
If an argument is a lowercase letter, the
extension is allowed but a warning will be issued.
See also +e and +E.
The arguments have the following meanings:
H or h Recognize Hollerith data
M or m Allow MIL-STD-1753 extensions.
N or n Allow NAMELIST.
R or r Allow recursion.
S or s Allow selected syntactical
features: lowercase letters, tabs,
quotation marks, and symbolic names
with a length greater than six
characters.
A or a Allow recognition of all the above.
-A without any arguments is equivalent to -a,
except that -A gives errors instead of warnings.
Note that specifying -A also sets -K unless you
include one of the arguments from the subset
{AaRr}.
+A[secondary] Set the alignment of data items within FORTRAN
STRUCTUREs, COMMON blocks, and EQUIVALENCE
classes. Defined values for secondary are:
3 Same as the Series 300/400 C compiler.
8 Same as Series 800 C compiler.
Specifying +A without any arguments aligns data on
2-byte boundaries.
+apollo Enable Apollo Domain compatible defaults in data
representation, intrinsics support, and procedure
calling conventions.
+autodblpad Promote all single-precision floating-point items
to double-precision, and all double-precision
floating-point items to extended precision.
+B Treat the backslash character (\) as a C-like
escape character.
Hewlett-Packard Company - 2 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
-c Suppress linking and produce an object (.o) file
from each source file.
-C Enable range checking.
-D Compile debug lines as source statements. Source
lines with a D or d in column 1 are treated as
comments if this option is not specified.
-Dname[=def] Define a symbol name to the C preprocessor. This
option applies to .F suffix files only.
+DAmodel Generate code for a specific version of the PA-
RISC architecture. model can be one of the
following:
+ A PA-RISC version number (1.1 or 2.0)
+ A model number (e.g., 750 or 870)
+ One of the PA-RISC processor names (e.g.,
PA7000, PA7100, or PA8000).
+ The word portable to generate code
compatible across all PA-RISC 1.1 and 2.0
workstations and servers.
If you want to generate code that is compatible
with PA-RISC 1.0 systems, you should compile and
link your program on a PA-RISC 1.0 machine. Code
generated for 1.1 or 2.0 systems may not run on
earlier architectures.
+DC7200 Performs memory hierarchy optimizations for the
PA7200 processor.
+dfname Use name as the profile database file, if the file
flow.data has been renamed. For information about
profile-based optimization, see the HP
FORTRAN/9000 Programmer's Guide.
+DSmodel Perform instruction scheduling appropriate for a
specific implementation of the PA-RISC
architecture. model can be one of the following:
+ A PA-RISC version number (1.1 or 2.0)
+ A model number (e.g., 750 or 870)
+ One of the PA-RISC processor names (e.g.,
PA7000, PA7100, or PA8000).
Hewlett-Packard Company - 3 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
If this option is not used, code is generated
based on the model number returned by uname() (see
uname(2)).
Note that code generated for one version will
execute on another version, though possibly not as
efficiently.
+e Enable additional extensions. This is equivalent
to specifying all the +E options (except +E4).
This option turns on the -K option.
+es Allow more than 72 characters on a single source
line (Extended Source).
+Esecondary This option enables specific compatibility modes.
secondary can be one or more of the following:
1 Recognize intrinsics DATE, IDATE,
SECNDS, SIZEOF, TIME, RAN, and EXIT.
2 Treat -1 as .TRUE. and zero as .FALSE.
4 Print a zero before the decimal point
with the E, G, and F format specifiers.
5 Allow multiple FORTRAN UNITs to be
attached to the same HP-UX file.
6 Enable full variable-format expressions.
7 Use static storage for arguments passed
to subroutines and functions.
-F Apply the C preprocessor to .F files and put the
output in a file of the same name with the suffix
changed to .f. The .f files are not compiled.
+FPflags Specifies how the runtime environment for trapping
floating-point operations should be initialized at
program startup. The default is that all traps
are disabled. See ld(1) for specific values for
flags.
-g Generate information needed by the symbolic
debugger HP/DDE (see dde(1)) or by xdb (see
xdb(1)). This option is compatible with
optimization levels 0, 1, and 2, but not 3 and 4.
-G Prepare object files for profiling with gprof (see
gprof(1)).
Hewlett-Packard Company - 4 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
-I2 Make default size of integers and logicals
INTEGER*2 and LOGICAL*2.
-I4 Make default size of integers and logicals
INTEGER*4 and LOGICAL*4. This is the default.
-Idirectory Add directory to the list of directories searched
for #INCLUDE and $INCLUDE files with relative path
names.
+I Generate object code for application profiling
using profile-based optimization. This option is
incompatible with -G, -p, -s, -S, and -y. For
more information about profile-based optimization,
see the HP FORTRAN/9000 Programmer's Guide. For an
example command line showing how to use this
option, see the EXAMPLES section.
+k Generate code for programs that reference a very
large number of shared data items. The linker
will issue a diagnostic message in the rare case
when this option is needed.
-K Automatically SAVE all local variables in all
subprograms. This option is useful for porting
older programs. Note the following when using
-K:
+ All non-initialized variables are
initialized to zero.
+ This option may result in lower
performance, especially of optimized code.
-lx Add libx.a or libx.sl to the library search path.
See the -Ldirectory option (below) and ld(1).
-lisam Link the ISAM library into the program. ISAM
(Indexed Sequential Access Method) is purchased
separately.
-L (f77 only) Write a program listing to the standard
output during compilation. This option overrides
the -V option.
-Ldirectory (fort77 only) Add directory to the front of the
library search path. This option applies only to
libraries and must precede the -lx option on the
command line. For more information, see ld(1).
Hewlett-Packard Company - 5 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
For f77, specify -Wl,-Ldirectory.
+mr Permit the reading or writing of multiple
unformatted records when an I/O statement's
variable list requires or specifies more values
than are in the record.
-n Cause the output file from the linker to be marked
shared.
-N (f77 only) Prevent the output file from the linker
from being marked shared.
-N (fort77 only) Disallow any special code
optimization. This option overrides the -O and +O
options.
+N{cnqs}N Set the initial size of internal compiler tables,
where a character from the set cnqs specifies the
table, and the integer N specifies the number of
table entries. These tables are expanded
automatically by the compiler as needed; this
option is only rarely needed. For more
information, see the HP FORTRAN/9000 Programmer's
Reference.
-o outfile Name the output file outfile instead of the
default file name (i.e., a.out, filename.o, and
filename.s).
-onetrip Execute any DO loop at least once (FORTRAN 66
compatibility).
-O (f77 only) Perform optimization at level 2
(equivalent to +O2). For information about
additional optimization options, see the
OPTIMIZATION section.
-Ooptlevel (fort77 only) Specify the level of optimization.
For information about optlevel, see the +Ooptlevel
option.
+Ooptlevel Specify the level of optimization. Higher levels
include optimizations performed at lower levels.
optlevel can be one of the following:
0 Minimal optimization, fastest compile
time. This is the default.
1 Block-level optimizations, moderately
fast compile time, moderate improvement
Hewlett-Packard Company - 6 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
in runtime performance.
2 Full optimization within each subprogram
in a file. Marked improvement in
runtime performance, noticeably longer
compile time, program transformations
more pronounced than at lower levels.
This level can also be invoked with the
-O option.
3 Full optimization across all subprograms
within the source file, including
subprogram cloning, inlining, and loop
transforms. This level of optimization
can greatly improve the runtime
performance of programs that make
frequent procedure calls.
4 Full optimization across all files
compiled at this level. This
optimization occurs at link time to
perform inlining and other optimizations
across all files in the compilation
unit. Level 4 optimization can result
in the best runtime performance, at the
cost of increased compile time and
memory usage.
For information about additional optimization
options, see the OPTIMIZATION section.
-p Prepare object files for profiling with prof (see
prof(1)).
+P Use profile information (created by using the +I
option) to guide code generation and optimization.
This option is incompatible with the -g, -S, and
-y options. For more information about profile-
based optimization, see the HP FORTRAN/9000
Programmer's Guide. For an example command line
showing how to use this option, see the EXAMPLES
section.
+ppu Append underscores at the end of definitions of
and references to externally visible symbols.
+pgmname Use name as the look-up string in the profile
database file flow.data. For more information
about profile-based optimization, see the HP
FORTRAN/9000 Programmer's Guide. For an example
command line showing how to use this option, see
Hewlett-Packard Company - 7 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
the EXAMPLES section.
-q Cause the output file from the linker to be marked
demand load.
-Q Prevent the output file from the linker from being
marked demand load.
+Qdfile Cause dfile to be read before compilation of each
source file. dfile must contain only compiler
directives.
-R4 Make the default size of floating-point constants
REAL*4. This is the compiler's default.
-R8 Make the default size of floating-point constants
REAL*8.
+R Write cross reference and symbol table information
to standard output during compilation. When used
with the fort77 -V option, output is written to
the .l file instead.
-s Cause the output from the linker to be stripped of
symbol table information (see ld(1) and strip(1)).
This option is incompatible with symbolic
debugging.
-S Compile the named source files and leave the
assembly language output in corresponding files
whose names are suffixed with .s (no .o files are
created).
-tc,name Substitute a private version of one or more
subprocesses of the compilation. c is one or more
of the characters listed under the -W option. For
more information about the -t option, see the HP
FORTRAN/9000 Programmer's Reference.
+T Enable proper handling of the ON statement. This
option also causes the running program to issue a
procedure traceback for runtime errors.
+ttyx Use buffered or unbuffered output to the tty. x
can be buf (output is buffered, the default) or
unbuf (output is unbuffered). See also the
TTYUNBUF environment variable under EXTERNAL
INFLUENCES.
-u Force identifiers to be explicitly declared (same
as specifying IMPLICIT NONE).
Hewlett-Packard Company - 8 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
-U Use uppercase for external names (default is
lowercase).
+U Distinguish uppercase and lowercase (make case
significant) in user-defined names. Keywords are
recognized regardless of case.
+U77 Invoke support for the BSD 3F library.
-v Enable verbose mode, producing a step-by-step
description of the compilation process on standard
error.
-V Produce a source listing. The listing is written
to a listing (.l) file corresponding to each
source (.f) file.
-w Suppress warning messages.
-w66 Enable warnings about FORTRAN 66 features used.
-Wc,arg1[,arg2,...,argN]
Cause arg1 through argN to be handed off to a
subprocess of the compilation, identified by c. c
can be one of the following:
c or 0 main compiler
l linker
u standalone link-time compiler
F C preprocessor
r ratfor preprocessor
a assembler
-y Generate additional information needed by static
analysis tools. This option is incompatible with
optimization and overrides the -s option.
-Y[lang] Enable 8-bit and 16-bit Native Language Support
(NLS) in strings and comments. By default, NLS is
not enabled.
+z Generate Position Independent Code (PIC) with
short displacements for use in shared libraries.
This option overrides the -p and -G options.
+Z Generate Position Independent Code (PIC) with long
displacements for use in shared libraries. This
option overrides the -p and -G options.
EXTERNAL INFLUENCES
Hewlett-Packard Company - 9 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
Environment Variables
FCOPTS Contains options and arguments for the compiler. The
compiler picks up the value of FCOPTS and places its
contents before any arguments on the command line. For
example, if FCOPTS has the value -v, the following
compile-line:
f77 -L prog.f
is equivalent to
f77 -v -L prog.f
The | character can be used in the FCOPTS environment
variable. Options appearing before | in FCOPTS are
recognized before any options on the command line.
Options appearing after | in FCOPTS are recognized
after any options on the command line. For example,
FCOPTS="-O | -lmylib"
export FCOPTS
f77 -v prog.f
is equivalent to
f77 -O -v prog.f -lmylib
MP_NUMBER_OF_THREADS
This environment variable specifies the number of
processors that are to execute programs that have been
compiled for parallel execution. If not set, it
defaults to the number of processors on the executing
machine.
The following command lines show the C shell syntax and
Korn shell syntax (respectively) to use when setting
the variable to 2 processors:
setenv MP_NUMBER_OF_THREADS 2
export MP_NUMBER_OF_THREADS=2
Note that this environment variable is only for use
with programs that have been compiled with +Oparallel;
see the OPTIMIZATION section for information about this
option.
TMPDIR This environment variable specifies a directory for
temporary files to be used instead of the default
directory /var/tmp.
Hewlett-Packard Company - 10 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
TTYUNBUF This environment variable controls tty buffering. To
enable tty buffering, set TTYUNBUF=0. To disable tty
buffering, set TTYUNBUF to a nonzero value.
International Code Set Support
Single- and multi-byte character code sets are supported in comments
and strings when the -Y option is used.
DIAGNOSTICS
Errors and warnings are written on standard error. If a listing is
requested (-L or -V options), errors and warnings are also written to
the listing file. The compiler also lists on standard error the names
of each source file and procedure as they are encountered.
OPTIMIZATION
In addition to the -O and +Ooptlevel options, f77 recognizes the
optimization options described in this section. These options enable
you to control the different optimization technologies described in
the HP PA-RISC Compiler Optimization Technology White Paper. (A
PostScript version of this document is available in
/opt/langtools/newconfig/white_papers/optimize.ps). To use many of
these options, you must also specify the +Ooptlevel option, where
optlevel must be a level specified in each of the option descriptions.
For a full description of the optimization options, refer to the HP
FORTRAN/9000 Programmer's Reference. For information about options
released after 10.0, refer to /opt/fortran/newconfig/doc.10.20 or to
the PostScript version /opt/fortran/newconfig/doc.10.20.ps. For
online information, access the HP FORTRAN/9000 Online Reference in the
HP VUE Help System.
The following options allow the user to control the extent of
optimization as well as to disable optimizations that impact code size
and system resources:
+O[no]aggressive
Apply [do not apply] aggressive optimizations.
These include new optimizations as well as
optimizations invoked by the following option
settings:
+Oentrysched
+Olibcalls
+Onofltacc
+Onoinitcheck
+Oregionsched
+Ovectorize
This option can be used at level 2 or higher. The
default is +Onoaggressive. Note that +Oaggressive
is incompatible with +Oconservative.
Hewlett-Packard Company - 11 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
+Oall Apply maximum optimization to achieve the best
runtime performance. This option is equivalent to
specifying +Oaggressive and +Onolimit on the same
command line. The +Oall option automatically
invokes optimization level 4.
+O[no]conservative
Make [do not make] conservative assumptions about
the program when optimizing. This option is
useful for optimizing programs that do not conform
to the language standard. This option can be used
at level 2 or higher. The default is
+Onoconservative.
+O[no]limit Suppress [do not suppress] optimizations that
significantly increase compile-time or consume
large amounts of memory. This option can be used
at level 2 or higher. The default is +Olimit.
+O[no]size Suppress [do not suppress] optimizations that
significantly increase code size. This option can
be used at level 2 or higher. The default is
+Onosize.
The following options provide low-level control over the optimization
process, allowing the user to enable or disable specific optimization
techniques:
+O[no]cache_pad_common
Insert [do not insert] padding between common
block variables to avoid cache collisions and bank
conflicts. This option can be used at
optimization level 3 or higher. The default is
+Onocache_pad_common.
Note that, if any files are compiled with the
+Ocache_pad_common option, then all other program
files that reference the same common blocks must
also be compiled with this option so that the
common blocks are laid out consistently.
+O[no]dataprefetch
Insert [do not insert] instructions within
innermost loops to explicitly prefetch data from
memory into the data cache. Data prefetch
instructions can improve cache performance. This
option can be used at optimization level 2 or
higher. The default is +Onodataprefetch.
+O[no]entrysched
Perform [do not perform] instruction scheduling on
Hewlett-Packard Company - 12 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
a subprogram's entry and exit code sequences.
This option can be used at optimization level 1 or
higher. The default is +Onoentrysched.
+O[no]fail_safe
Continue [do not continue] compiling at +O0 if any
internal optimization errors occur during the
compilation. This option can be used at
optimization level 1 or higher. +Onofail_safe
aborts compilation when internal errors occur.
The default is +Ofail_safe.
+O[no]fastaccess
Enable [disable] fast access to global data. Any
files that are compiled with +Ofastaccess must
also be linked with +Ofastaccess. This option can
be used at all levels of optimization The default
is +Ofastaccess at optimization level 4, and
+Onofastaccess at lower levels.
+O[no]fltacc Disable [enable] floating-point optimizations that
can result in numerical differences. +Onofltacc
also generates Fused Multiply-Add (FMA)
instructions, as does compiling your program at
optimization level 2 or higher. FMA instructions
can improve performance of floating-point
applications and are available only on PA-RISC 2.0
systems or later.
If you do not specify either +Ofltacc or
+Onofltacc at optimization level 2 or higher, the
optimizer will generate FMA instructions but will
not perform any expression-reordering
optimizations.
+O[no]info Display [do not display] feedback information
about the optimization process. Currently, this
option is useful only at optimization level 3 or
higher. The default is +Onoinfo.
+O[no]initcheck
Enable [disable] initialization of any local,
scalar, automatic variable that is found to be
uninitialized. This option can be used at
optimization level 2 or higher. If you do not
specify either +Oinitcheck or +Onoinitcheck, the
default is to initialize any variable that is
uninitialized with respect to every path leading
to its use.
Hewlett-Packard Company - 13 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
+O[no]inline[=name1, name2, ... nameN]
Request [disable] inlining for the specified
procedures. If specified without a namelist,
+O[no]inline requests [disables] inlining for all
procedures in the compilation unit. This option
can be used at optimization level 3 or higher.
The default is +Oinline.
+Oinline_budget=n
Perform more aggressive inlining, where n
specifies the degree of aggressiveness, as
follows:
100 Default level of inlining.
> 100
More aggressive inlining at the expense
of compilation time and code size. The
maximum for n is 1000000.
2 - 99
Less aggressive inlining. The optimizer
gives more weight to compilation time
and code size when determining whether
to inline.
1 Inline only if it reduces code size.
This option can be used at optimization level 3 or
higher.
+O[no]libcalls Use [do not use] low-call-overhead versions of
select library routines. This option can be used
at optimization level 2 or higher. The default is
+Onolibcalls.
+O[no]loop_transform
Transform [do not transform] eligible loops for
improved cache performance. This option can be
used at optimization level 3 or higher. The
default is +Oloop_transform.
+O[no]loop_unroll[=n]
Unroll [do not unroll] program loops by a factor
of n. For example, specifying +Oloop_unroll=4
requests the optimizer to replicate the loop body
four times. This option can be used at
optimization level 2 or higher. The default is
+Oloop_unroll=4.
Hewlett-Packard Company - 14 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
+O[no]moveflops
Enable [disable] moving conditional floating-point
instructions above the conditional. This option
can be used at optimization level 2 or higher.
The default is +Omoveflops.
+O[no]parallel Transform [do not transform] eligible loops for
parallel execution on multiprocessor machines. If
you want to compile a program for parallel
execution, you must compile all of its files with
either +Oparallel or +Oparallel_env. Also, any
files that are compiled with +Oparallel must also
be linked with +Oparallel. This option can be
used at optimization level 3 or higher. The
default is +Onoparallel.
See also the +O[no]parallel_env option.
+O[no]parallel_env
Compile for a parallel [serial] execution
environment. This option does not request
parallelization for the target source; rather, it
ensures a consistent execution environment for all
files in a parallel-executing program. If you
want to compile a program for parallel execution,
you must compile all of its files with either
+Oparallel or +Oparallel_env. Also, any files
that are compiled with +Oparallel_env must be
linked with +Oparallel.
The +Oparallel_env option can be used at
optimization level 3 or higher. The default is
+Onoparallel_env.
+O[no]parmsoverlap
Optimize with the assumption that subprogram
arguments may [do not] refer to the same memory.
This option can be used at optimization level 2 or
higher. The default is +Onoparmsoverlap.
+O[no]pipeline Enable [disable] software pipelining. This option
can be used at optimization level 2 or higher.
The default is +Opipeline.
+O[no]procelim Remove [do not remove] any unreferenced procedures
from the output executable file. Any files that
are compiled with +Oprocelim must also be linked
with +Oprocelim. The default is +Onoprocelim at
optimization levels 0 through 3, and +Oprocelim at
level 4.
Hewlett-Packard Company - 15 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
+O[no]regionsched
Apply [do not apply] aggressive scheduling
techniques to move instructions across branches.
This option can be used at optimization level 2 or
higher. The default is +Onoregionsched.
+O[no]regreassoc
Enable [disable] register reassociation. This
option can be used at optimization level 2 or
higher. The default is +Oregreassoc.
+O[no]sideeffects=name1, name2,...,nameN
Optimize with the assumption that the specified
subprograms do [do not] modify global variables.
This option can be used at optimization level 2 or
higher. The default is to assume that all
subprograms have side effects unless the optimizer
can determine that there are none.
+O[no]static_prediction
Enable [disable] static branch prediction for PA-
RISC 2.0 targets when using Profile-Based
Optimization (PBO). This option can improve the
performance of very large programs with poor
instruction locality. +Ostatic_prediction is
valid only when used as an amplifier to the +P
option; it is otherwise ignored. Any files that
are compiled with +Ostatic_prediction must also be
linked with +Ostatic_prediction. It can be used
at any level of optimization. The default is
+Onostatic_prediction.
+O[no]vectorize
Replace [do not replace] eligible loops with calls
to the vector library. Any files that were
compiled with +Ovectorize must also be linked with
+Ovectorize. This option can be used at
optimization level 3 or higher. The default is
+Onovectorize.
+O[no]whole_program_mode
Assert [do not assert] that only files compiled
with this option directly reference any global
variables and procedures that are defined in these
files. This option enables optimizations that
assume that there are no unseen accesses to the
globals. This option can be used only at
optimization level 4. The default is
+Onowhole_program_mode.
Hewlett-Packard Company - 16 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
EXAMPLES
The following command compiles and links the source file prog.f,
producing the linked executable file a.out.
f77 prog.f
The next command compiles, optimizes, and links the source files t.f,
r.f, and s.f, producing the linked executable file sample.
f77 -O -o sample t.f r.f s.f
The next three command lines show how to optimize your application
using Profile-Based Optimization (PBO). First, use the +I option to
instrument your application (in this example, sample.f) for collecting
profiling information:
f77 -o sample.inst +I +O3 sample.f
Next, run the instrumented excutable, using representative input data:
sample.inst <input.data
Note that you can run the instrumented executable a number of times to
average over multiple input sets.
Finally, relink your application, using the +P option:
f77 -o sample.opt +O3 +P +pgm sample.inst sample.o
Note that the +pgm option allows you to give a different name to the
optimized executable from the name you gave to the instrumented
executable. (The default name is the one you specify with the -o
option.) Also, when re-linking, you must re-specify the same level of
optimization (in this example, +O3) that you specified when creating
the original object file (in this example, sample.o).
AUTHOR
f77 and fort77 were developed by HP.
FILES
file.f input file (FORTRAN source
file)
file.o object file
file.F input file (FORTRAN source
with cpp directives)
file.r input file (ratfor source
file)
file.s input file (assembly source
file)
file.c input file (C source file)
Hewlett-Packard Company - 17 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
a.out linked executable output file
/opt/fortran/bin/f77 compiler driver
/opt/fortran/bin/fort77 compiler driver (POSIX
standard)
/opt/fortran/lbin/f77pass1 compiler
/opt/fortran/lib/libU77.a library containing +U77
routines
/opt/fortran/lib/libp/libU77.a profiling library containing
+U77 routines
/opt/fortran/lib/nls/C/libU77.cat libU77 message catalog
/opt/fortran/lib/libisamstub.a archive version of ISAM stubs
/opt/fortran/lib/pa1.1/libblas.a BLAS library tuned for PA-RISC
1.1 and 2.0
/opt/fortran/lib/libblas.a BLAS library tuned for PA-RISC
1.0
/opt/fortran/lib/pa1.1/libvec.a Vector library tuned for PA-
RISC 1.1 and 2.0
/opt/fortran/lib/libvec.a Vector library tuned for PA-
RISC 1.0
/opt/fortran/share/man/man3.Z/*.3f man pages for libU77 routines.
/opt/fortran/share/man/man3.Z/*.3x man pages for libblas and
libvec routines.
/opt/fortran/lib/nls/msg/$LANG/f77.cat driver error message files
/usr/lib/nls/msg/C/libmp.cat runtime error message file for
programs compiled for parallel
execution
/opt/fortran/lib/nls/msg/$LANG/f77pass1.cat
compiler error message file
/opt/fortran/lib/libfsys.a pre-9.0 FORTRAN-to-HP-UX
system call interfaces
/opt/langtools/lib/end.o symbolic debugger string
buffer
/usr/ccs/bin/as assembler
/opt/langtools/lib/crt0.o runtime startup code
/opt/langtools/lib/icrt0.o startup code for use with
profile-based optimization
/opt/langtools/lib/libmp.a runtime library for programs
compiled for parallel
execution
/opt/langtools/lib/mpcrt0.o runtime startup code for
programs compiled for parallel
execution
/opt/langtools/lib/gcrt0.o startup code for use with
profiling via gprof
/opt/langtools/lib/mpgcrt0.o startup code for using gprof
with programs compiled for
parallel execution
/opt/langtools/lib/mcrt0.o startup code for use with
profiling via prof
Hewlett-Packard Company - 18 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
/usr/lib/libc.a C library; see intro(3).
/usr/lib/libm.a PA-RISC 1.0 math library
/usr/lib/pa1.1/libm.a PA-RISC 1.1 and 2.0 math
library
/usr/lib/libcl.a FORTRAN math and I/O libraries
/usr/lib/lib*.sl sharable versions of libraries
/usr/lib/libportnls.a NLS runtime library
/usr/lib/libnlsstubs.a stubs for NLS library routines
/usr/lib/libisamstub.sl shared version of ISAM stubs
/usr/lib/nls/msg/$LANG/libcl.cat runtime error message file
/opt/langtools/lib/sched.models processor architecture
classification file
/var/tmp/fc* compiler temporary files
/var/tmp/fcp* temporary file for cpp output
SEE ALSO
Program management and analysis tools:
fsplit(1) split f77, ratfor, or efl files
lintfor(1) check for erroneous, non-portable, or wasteful use
of FORTRAN
ratfor(1) preprocess rational FORTRAN dialect into ordinary
FORTRAN
softstatic(1) static analysis tool (shipped with SoftBench
software)
Profiling and debugging tools:
dde(1) invoke Distributed Debugging Environment (HP/DDE)
debugger
gprof(1) display call graph profile data
prof(1) display profile data
puma(1) invoke the performance analysis tool
xdb(1) invoke the symbolic debugger
xps(1) invoke the system monitoring tool
System tools:
ar(1) create archived libraries
as(1) translate assembly code to machine code
asa(1) interpret ASA carriage-control characters
cc(1) invoke the HP-UX C compiler
c89(1) invoke the HP-UX POSIX-conformant C compiler
cpp(1) invoke the the C language preprocessor
ld(1) invoke the link editor
Miscellaneous:
matherr(3M) trap math errors
Hewlett-Packard Company - 19 - HP-UX Release 10.0: March 1994
f77(1) f77(1)
strip(1) strip symbol and line number information from an
object file
STANDARDS CONFORMANCE
ANSI X3.9-1978 (FORTRAN77)
fort77: XPG4
Hewlett-Packard Company - 20 - HP-UX Release 10.0: March 1994