The Sun Fortran compilers, f77 and f90, described in this book (and the companion Fortran User's Guide) are available under the Solaris operating environment on the various hardware platforms that Solaris supports. The compilers themselves conform to published Fortran language standards, and provide many extended features, including multiprocessor parallelization, sophisticated optimized code compilation, and mixed C/Fortran language support.
f77 was designed to be compatible with the ANSI X3.9-1978 Fortran standard and the corresponding International Organization for Standardization (ISO) 1539-1980, as well as standards FIPS 69-1, BS 6832, and MIL-STD-1753.
f90 was designed to be compatible with the ANSI X3.198-1992 standard, and ISO/IEC 1539:1991
Floating-point arithmetic for both compilers is based on IEEE standard 754-1985, and international standard IEC 60559:1989.
On SPARC processors, both compilers provide support for the optimization-exploiting features of SPARC V8, and SPARC V9, including the UltraSPARC(TM) implementation. These features are defined in the SPARC Architecture Manuals, Version 8 (ISBN 0-13-825001-4), and Version 9 (ISBN 0-13-099227-5), published by Prentice-Hall for SPARC International.
In this document, "Standard" means conforming to the versions of the standards listed above. "Non-standard" or "Extension" refers to features that go beyond these versions of these standards.
The responsible standards bodies may revise these standards from time to time. The versions of the applicable standards to which these compilers conform may be revised or replaced, resulting in features in future releases of the Sun Fortran compilers that create incompatibilities with earlier releases.
Sun Fortran compilers provide the following features or extensions:
f77: Global program checking across routines for consistency of arguments, commons, parameters, and the like
SPARC: Multiprocessor support, including automatic and explicit loop parallelization tightly integrated with optimization
Parallelization features of the Fortran compilers are available only with Sun(TM) Performance WorkShop(TM).
f77: Many VAX/VMS Fortran extensions, including:
NAMELIST
DO WHILE
Structures, records, unions, maps
Variable format expressions
Recursion
Pointers
Double-precision complex
SPARC: Quadruple-precision real
SPARC: Quadruple-precision complex
Cray-style parallelization directives, including TASKCOMMON, with extensions on f90.
Global, peephole, and potential parallelization optimizations produce high-performance applications. Benchmarks show that optimized applications can run significantly faster when compared to unoptimized code.
Common calling conventions on Solaris systems permit routines written in C or C++ to be combined with Fortran programs.
Support for 64-bit Solaris 7 environments on UltraSPARC processors.
Fortran 95 features in f90 include the attributes PURE and ELEMENTAL, and enhanced forms of MAXVAL and MINVAL.
Call-by-value, %VAL, implemented in both f77 and f90.
Interoperability between FORTRAN 77 and Fortran 90 programs and object binaries.