Chapter 1. Introduction

This manual describes the MIPSpro Fortran 90 compiler which runs on IRIX operating systems (6.2 or later). This manual describes the command line options, the directives, and related library routines used by the compiler. It does not discuss in detail any optimization or debugging techniques. See the Preface for a list of books that describe the optimization and debugging tools.

The compiler was developed to support the Fortran standard adopted by the American National Standards Institute (ANSI) and the International Standards Organization (ISO). This standard, commonly referred to as the Fortran 95 standard, is ISO/IEC 1539-1:1997. Because the Fortran 95 standard is a superset of previous Fortran standards, the compiler compiles code written in accordance with previous Fortran standards.

The Fortran 95 standard is a revision to the Fortran 90 language standard. Because of the number and complexity of the features, the standards organizations are continuing to interpret the Fortran 95 standard for vendors. To maintain conformance to the Fortran 95 standard, some compiler features may be changed in in future releases based upon the outcome of the outstanding interpretations to the standard.

The f90(1) Command

In the following example, the f90(1) command is used to invoke the compiler. The -listing option is specified to generate a source listing and a cross reference. File pgm.f is the input file. After compilation, you can run this program by entering the output file name as a command. In this example, the default output file name, a.out, is used.

% f90 -listing pgm.f
% ./a.out

You can use the options on the f90(1) command line to modify the default actions; for example, you can disable the load step. For more information on f90(1) command line options, see the f90(1) man page..

The Compiler Programming Environment

The compiling environment allows you to develop, debug, and run Fortran codes on your computer system. It includes the following products:

  • A preprocessor. By default, files suffixed with .F or .F90 are run through the Fortran source preprocessor prior to compilation. You can use the -ftpp or -cpp options on the f90(1) command line to invoke a preprocessor for files without the .F or .F90 suffix.

  • A lister. You can specify the -listing option on the f90(1) command line to obtain a source listing and a cross reference. You can also invoke a separate lister, ftnlist(1).

  • The ftnlint(1) utility, which checks Fortran programs for possible errors.

  • The compiler information file (CIF) tools, which include the cifconv(1) command and the libraries.

  • The libraries, which include optimized functions and intrinsics. Information on the individual library routines can be found in the online man pages for each routine.

  • The performance tools contained in SpeedShop and in the ProDev ProMP suite. For more information on these products, see the SpeedShop User's Guide or the ProDev WorkShop: ProMP User's Guide.

  • An archiving tool. An archive library is a file that contains one or more routines in object file format (file.o ). When a program calls an object file that is not explicitly included in the program, the linker, ld(1), looks for that object file in an archive library. The scheduler then loads only that object file, not the whole library, and loads it with the calling program.

    The archiver creates and maintains archive libraries. It allows you to copy new objects into the library, replace existing objects in the library, move objects within the library, and copy individual objects from the library into individual object files. For more information on the archive library, see the ar(1) man page.

  • Object file tools, which allow you to disassemble object files into machine instructions, print information about archive files, and perform other tasks. For more information on these tools, see the following man pages: dis(1), elfdump(1), file(1), nm(1), size(1), and strip(1).

  • ftnchop(1), ftnmgen(1), and ftnsplit(1). These commands invoke a program unit problem isolator, a Fortran makefile utility, and a split utility, respectively. For more information on these commands, see the man pages for each.

  • Online documentation utilities. The man(1) command allows you to retrieve online man pages. Prose reference text, such as this manual, can be retrieved through the WWW browser supported at your site. Contact your support staff for specific information on retrieving information in this manner.

  • Modules. The compiler can be installed with the modules utility. This utility allows you to access different versions of the compiler and runtime environment. For more information on using the modules utility, see the modules(1) man page or enter the following command:

    % relnotes modules

  • The message system. This system lets you obtain more comprehensive explanations of messages generated by the compiler and tools in the compiling environment. When a message condition occurs, both a message number and a verbal summary of the problem is generated. If you need more information on the error condition described in the summary, you can enter the explain (1) command to retrieve a more detailed description.

  • Environment variables. For more information, see the pe_environ(5) man page, which describes many environment variables that can be used when compiling Fortran programs.