XL Fortran for AIX

 Usage:
    xlf  [ option | file ] ...
    f77  [ option | file ] ...
    xlf90  [ option | file ] ...
    xlf_r  [ option | file ] ...
    xlf90_r  [ option | file ] ...
    xlhpf90  [ option | file ] ...
    xlhpf  [ option | file ] ...

 Description:
   The xlhpf90 command compiles XL Fortran source files.  It also processes
   assembler source files and object files. Unless the -c option is specified,
   it calls the linkage editor to produce a single object file. The names
   of input files indicate:
     1. .f suffix: Fortran source file
     2. .o or .a suffix: object file for ld command
     3. .s suffix: assembler source file.
     4. .F suffix: Fortran source file with cpp preprocessor directives

 Options:
   You can select compiler behavior by using compiler options on the
   command line, or by running the xxlhpf command to select them interactively.
   For a detailed description of each option, please refer to the User's
   Guide.  Some options apply to HPF but not Fortran 90, or to Fortran 90 
   but not HPF.

   Options can be one or more of the following:

     1. flag options:

       -#        Displays verbose information on the compiler's progress
                 without invoking anything.
       -1        Executes DO loops at least once, if reached.  Do not use for 
                 HPF procedures.
       -bdynamic This option is only available on AIX 4.2 and above.  It is
                 used to control the processing of -l options and the way
                 that shared objects are processed.  When this option, the
                 default, is in effect, shared objects are linked dynamically.
       -bhalt:<error_level>
                 Specifies the maximum error level for linker (ld) command
                 processing to continue.  The default value is 4, as specified
                 in the configuration file.    
       -bloadmap:<name>
                 Requests that a log of linker actions and messages be saved
                 in file <name>.
       -bmaxdata:<bytes>
                 Specifies the maximum amount of space to reserve for the
                 program data segment for programs where the size of these
                 regions is a constraint.
       -bmaxstack:<bytes>
                 Specifies the maximum amount of space to reserve for the
                 program stack segment for programs where the size of these
                 regions is a constraint.
       -brtl     This option is only available on AIX 4.2 and above.  It
                 determines which algorithm will be used to find libraries
                 (specified with the -l option).  If -brtl is specified,
                 run-time linking is enabled.
       -bshared  Synonymous with -bdynamic.
       -bstatic  This option is only available on AIX 4.2 and above.  It is
                 used to control the processing of -l options and the way
                 that shared objects are processed.  Shared objects are
                 statically linked into the output file.
       -B<prefix>
                 Constructs alternate names for preprocessor, compiler,
                 assembler, linkage editor, and other components.
                 <prefix> is added to the beginning of the standard
                 program names.
       -c        Compile only; do not call the linkage editor.
       -C        Performs run-time checking of array bounds and character
                 substring expressions.  Not recommended for HPF procedures.
       -d        Leaves temporary files produced by cpp, instead of deleting
                 them.
       -D        Compiles lines of fixed source form Fortran code that have
                 a D in column 1.
       -F[<x>][:<stanza>]
                 Uses alternative configuration file <x> and/or stanza <stanza>.
       -g        Produces debug information.
       -I<dir>   Searches in directory <dir> for INCLUDE files that
                 do not start with an absolute path, and for the .mod
                 files of any modules used.
       -k        States that Fortran code is in free source form input format.
       -l<key>   Search the specified library file,
                 where <key> selects the file lib<key>.a.
       -L<dir>   Searches in directory <dir> for files specified by -l<key>.
       -N<x><num>
                 Specifies internal program storage areas where <x> can be S
                 and <num> is used to calculate the size of the areas.
       -o<name>  Specifies a name <name> for the output object, executable, or
                 assembler source file.
       -O        Optimizes code generated by the compiler.
       -O2       Optimizes code (this is the same as -O).
       -O3       Performs the -O level optimizations and perform additional
                 optimizations that are memory or compile time intensive.
       -O4       Aggressively optimizes the source program, trading off
                 additional compile time for potential improvements in the
                 generated code.  This option implies the use of -qarch=auto.
       -p        Generates simple profiling support code.
       -pg       Generates profiling support code.  Provides more extensive
                 profiling than -p.
       -P        Invokes the -Pv preprocessor before the compiler.  Not
                 recommended for HPF procedures.
       -Pv       Invokes the -Pv preprocessor before the compiler.  Not
                 recommended for HPF procedures.
       -Pk       Invokes the -Pk preprocessor before the compiler.  Not
                 recommended for HPF procedures.
       -P!       Invokes the -Pv preprocessor only.  Not
                 recommended for HPF procedures.
       -Pv!      Invokes the -Pv preprocessor only.  Not
                 recommended for HPF procedures.
       -Pk!      Invokes the -Pk preprocessor only.  Not
                 recommended for HPF procedures.
       -Q        Inlines all appropriate subprograms.
       -Q<x>     Inlines specified subprograms
                 where <x> can be one of the following:
                   !        = Do not inline.
                   -<names> = Do not inline the list of subprograms, <names>.
                   +<names> = Inline the list of subprograms, <names>.
       -S        Produces one or more .s files, showing equivalent assembler
                 source for each Fortran source file.
       -t<x>     Applies prefix from the -B option to the specified program
                 <x>, where <x> can be one or more of the following:
                 Component           -t Mnemonic     Standard Program Name
                 C preprocessor            F                   cpp
                 VAST-2 preprocessor       p                   fpp
                 KAP preprocessor          p                   fppk
                 compiler front end        c                   xlhpfentry
                 loop optimizer            h                   xlhpfhot
                 IPA processor             I (upper case i)    ipa
                 assembler                 a                   as
                 code generator            b                   xlhpfcode
                 linker                    l (lower case L)    ld
                 -S disassembler           d                   dis
                 binder                    z                   bolt
       -u        Specifies undefined (no) implicit data typing.
       -U        Suppresses lowercase folding of Fortran code.
       -v        Displays verbose information on the compiler's progress.
       -V        Displays verbose information on the compiler's progress in
                 shell-executable format.
       -w        Suppresses informational, language-level, and warning
                 messages.
       -W<x>,<option1>[,<option2>[, ... [,<optionN>] ... ]]
                 Sends options to program <x> that is executed during
                 compilation.  The suboptions are defined as <x> for -t<x>.
       -y<x>     Specifies compile-time rounding of constant floating-point
                 expressions, where <x> can be one of the following:
                   n = Round to nearest.  This is the default.
                   m = Round toward minus infinity.
                   p = Round toward positive infinity.
                   z = Round toward zero.

     2. other options:

        Other options may be on/off or have suboptions and are specified
        in one of two ways:

        i) -q<option>
           where <option> is an on/off switch such that, if x is the
           option, -qx turns the option on, and -qnox turns the
           option off.  For example, -qsource tells the compiler
           to produce a source listing, and -qnosource tells the compiler
           not to produce a source listing.

           The following override the initial compiler settings:

       -qattr        Produces attribute listing (only referenced names).
       -qcheck       The long form of the -C option.
       -qcompact     Reduces optimizations that increase code size.
       -qctyplss     Indicates that character constant expressions are
                     treated as Hollerith constants.
       -qdbg         The long form of the -g option.
       -qddim        Indicates that dimension declarators for pointees
                     can contain variable names for dynamic dimensioning.
                     Do not use for HPF procedures.
       -qdlines      The long form of the -D option.
       -qdpc         Promotes basic floating-point constants
                     to double precision.
       -qextchk      Performs procedure interface checking as well as
                     detection of mismatched common blocks.
       -qextname     Suffixes an underscore to all external names
                     (except for main program names).
       -qfullpath    Generates absolute source and include file names for
                     debugging.
       -qintlog      Allows mixture of INTEGER and LOGICAL values in
                     expressions and statements.
       -qkeepparm    Prevents flushing of the register, even if it could
                     improve performance.
       -qlibansi     See -qlibansi linktime option under -qipa.
       -qlibessl     See -qlibessl linktime option under -qipa.
       -qlibposix    See -qlibposix linktime option under -qipa.
       -qlist        Produces object listing.
       -qlistopt     Prints settings of all options in listing.
       -qlog4        Logical expressions that have a LOGICAL result are
                     of type LOGICAL(4).
       -qmbcs        Indicates that character or Hollerith constants, H edit
                     or character string edit descriptors can contain Multi-
                     Byte Character Set (MBCS) or Unicode characters.
       -qmixed       The long form of the -U option.
       -qnoescape    Specifies that the backslash is treated as the backslash
                     character, as opposed to an escape character, in character
                     strings, Hollerith constants, H edit descriptors, and
                     character string edit descriptors.
       -qnohpf       Indicates that the program should not be treated as an
                     HPF program.
       -qnolm        Disables license management.
       -qnoobj       Suppresses production of an object file.
       -qnoprint     Directs listing to /dev/null.
       -qnozerosize  Improves performance of some programs by preventing
                     checking for zero-sized character strings and arrays.
                     Do not use for HPF procedures.
       -qnullterm    Character constant actual arguments are null terminated.
       -qonetrip     The long form of the -1 option.
       -qoptimize    The long form of the -O option.
       -qpdf1        Produces an object that is instrumented to collect
                     run-time execution information.  This is phase 1 of the 
                     profile-directed feedback optimization process.
                     Do not use for HPF procedures.
       -qpdf2        Tunes application performance using the data generated
                     by running a program compiled with -qpdf1.  This is
                     phase 2 of the profile-directed feedback optimization
                     process.  Do not use for HPF procedures.
       -qphsinfo     Displays phase information on the screen.
       -qqcount      Interprets both extended precision and character
                     count Q edit descriptors.
       -qrecur       Not recommended.  Allows recursive subprograms.
       -qsaa         Performs SAA Fortran flagging.
       -qsave        Sets the default storage class for local variables to
                     STATIC.
       -qsource      Produces source listing.
       -qstrict      Ensures that optimizations done by the -O3 option
                     do not alter the semantics of a program.  Do not use
                     for HPF procedures.
       -qthreaded    The compiler must ensure that all internally-generated
                     temporaries have automatic storage (thread-safe).
       -qundef       The long form of the -u Option.
       -qwarn64      Aids in porting code from a 32-bit environment to a
                     64-bit environment by detecting the truncation of an
                     8 byte integer to 4 bytes.  Statements which may cause
                     problems will be identified through informational
                     messages.
       -qxref        Produces cross-reference listing (only referenced names).
       -q32          Indicates the compilation bit mode, and together with
                     the -qarch option, determines the target machine that a
                     32-bit executable will run on.
       -q64          Indicates the compilation bit mode, and together with
                     the -qarch option, determines the target machine that a
                     64-bit executable will run on.

       ii)  -q<option>=<suboption>
            -q<option>=<suboption1>:<suboption2>:...:<suboptionN>
            where <option> is assigned a specific suboption value or list
            of suboption values as follows:

       -qalias=<suboption>
                     Indicates whether a program contains certain
                     categories of aliasing, to determine whether
                     certain optimizations are performed:
                       aryovrlp   - Program contains array assignments of
                                    overlapping or storage-associated arrays.
                                    This is the default.
                       noaryovrlp - Program does not contain array
                                    assignments of overlapping or
                                    storage-associated arrays; can produce
                                    significant performance improvements for
                                    array language.
                       intptr     - Program contains integer pointer
                                    declarations.  Do not use for HPF
                                    procedures.
                       nointptr   - Program does not contain integer pointer
                                    declarations.  Do not use for HPF
                                    procedures.
                       std        - Program contains only standard-conforming
                                    aliasing.
                       nostd      - Program contains some non-standard
                                    aliasing.
       -qalign=4k    Indicates that large arrays and structures (at least
                     4096 bytes in size) will be aligned on a 4K (4096-byte
                     or page) boundary. Use of this option may help to
                     improve the performance of programs using data striping.
                     Many HPF data objects are not affected by this option.
       -qarch=<suboption>
                     Specifies what types of RISC systems the application
                     program may be executed on.  Suboptions include:
                       auto       - Automatically detects the specific
                                    architecture of the compiling machine.
                                    It assumes that the execution environment
                                    will be the same as the compilation
                                    environment.
                       com        - Produces an object that contains
                                    instructions that run on all POWER,
                                    and PowerPC hardware platforms.
                                    This is the default.
                       ppc        - Produces an object that contains
                                    instructions that run on any of the
                                    32-bit PowerPC hardware platforms.
                       pwr        - Produces an object that contains
                                    instructions that run on any of the
                                    POWER or POWER2 hardware platforms.
                       pwr2/pwrx  - Produces an object that contains
                                    instructions that run on the POWER2
                                    hardware platforms.
                       rs64a      - Produces an object that contains
                                    instructions that run on an RS64A
                                    hardware platform.
                       601        - Produces an object that contains
                                    instructions that run on PowerPC 601
                                    systems.
                       603        - Produces an object that contains
                                    instructions that run on PowerPC 603
                                    systems.
                       604        - Produces an object that contains
                                    instructions that run on PowerPC 604
                                    systems.
       -qassert=<suboption> ...
                     Provides information about the program to help fine-tune
                     optimizations:
                     nodeps      - No loops contain any loop-carried
                                   dependencies.
                     itercnt=<n> - The iteration count of a typical loop is <n>.
       -qattr=full   Produces attribute listing (all names, whether
                     referenced or not).
       -qautodbl=<setting>
                     Allows programs to perform REAL(4) calculations
                     using longer data types and the full speed
                     and precision of the POWER and POWER2 floating-point
                     hardware.  Do not use the "pad" suboptions for HPF
                     procedures.  Suboptions include:
                       none       - Does not promote or pad any objects that
                                    share storage.  This is the default.
                       dbl4       - Promotes floating-point objects that are
                                    single precision or are composed of such
                                    objects.
                       dbl8       - Promotes floating-point objects that are
                                    double precision or are composed of such
                                    objects.
                       dbl        - Combines the promotions done by dbl4 and
                                    dbl8.
                       dblpad4    - Performs the same promotions as dbl4,
                                    and also pads objects of other types
                                    (except CHARACTER) if they could
                                    possibly share storage with promoted
                                    objects.
                       dblpad8    - Performs the same promotions as dbl8,
                                    and also pads objects of other types
                                    (except CHARACTER) if they could
                                    possibly share storage with promoted
                                    objects.
                       dblpad     - Combines the promotions done by dblpad4
                                    and dblpad8, and also pads objects of
                                    other types (except CHARACTER) if they
                                    could possibly share storage with
                                    promoted objects.
       -qcache=<subopt1>=<val1>[:<subopt2>=<val2>[:...:<suboptN>=<valN>]]
                     Specifies the cache configuration for a specific
                     execution machine.  Suboptions include:
                       assoc=<num>
                                  - Specifies the set associativity of
                                    the cache.
                       cost=<cycles>
                                  - Specifies the performance penalty
                                    resulting from a cache miss.
                       level=<level>
                                  - Specifies which level of cache is
                                    affected.
                       line=<bytes>
                                  - Specifies the line size of the cache.
                       size=<Kbytes>
                                  - Specifies the total size of the cache.
                       type=<type>
                                  - Specifies the type of cache that the
                                    settings apply to.
       -qci=<num1>[:<num2>[: ... [:<numn>] ... ]]
                     Specifies identification numbers of conditional includes.
       -qdirective=<string1>[:<string2>[: ... [:<stringn>] ... ]]
                     Specifies target strings to be recognized in a comment
                     directive.  When compiling using -qhpf,
                     -qdirective=hpf$ is turned on by default.  When
                     compiling using -qsmp, -qdirective=smp$:$omp:ibmp is
                     turned on by default.
       -qextern=<name1>[:<name2>[: ... [:<namen>] ...]]
                     Specifies the names of subprograms that are to be
                     treated by the compiler as if they appear in EXTERNAL
                     statements.
       -qfixed=<num> States that Fortran code is in fixed source form, and
                     optionally specifies the maximum line length.
       -qflag=<sev1>:<sev2>
                     Specifies severity level of diagnostics to be reported
                     in listing, <sev1>, and on screen, <sev2>.
       -qfloat=<suboption1>[:<suboption2>[:...:<suboptionN>]]
                     Specifies various floating-point suboptions.
                     Suboptions include:
                       fltint     - For floating-point to integer conversion,
                                    uses faster inline code, which does not
                                    check for overflow.
                       hsflt      - Never rounds single-precision
                                    expressions, and doesn't perform range
                                    checking for floating-point to integer
                                    conversions.
                       hssngl     - Rounds single-precision expressions only
                                    when the results are stored into REAL(4)
                                    memory locations.
                       nans       - Detects operations involving signaling
                                    NaN values.
                       nofold     - Suppresses compile-time evaluation
                                    of constant floating-point expressions.
                       nomaf      - Suppresses generation of multiply-add
                                    instructions.
                       rndsngl    - Ensures strict adherence to IEEE
                                    standard.  That is, all operations on
                                    single-precision values produce results
                                    that remain in single precision.
                       rrm        - Specifies run-time rounding mode.
                                    Compile with this option if the run-time
                                    rounding mode is round toward minus
                                    infinity, round toward positive infinity,
                                    or not known.
                       rsqrt      - Changes a division by the result of a
                                    square root operation into a multiply
                                    by the reciprocal of the square root.
       -qflttrap=<suboption1>[:<suboption2>[:...:<suboptionN>]]
                     Determines what types of floating-point exception
                     conditions to detect at run time.  The program receives
                     a SIGTRAP signal when the corresponding exception occurs,
                     provided exception-checking is enabled.
                     Suboptions include:
                       overflow   - Detect and trap on floating-point overflow.
                       underflow  - Detect and trap on floating-point underflow.
                       zerodivide - Detect and trap on floating-point division
                                    by zero.
                       invalid    - Detect and trap on floating-point invalid
                                    operations.
                       inexact    - Detect and trap on floating-point inexact.
                       enable     - Turn on checking for the specified
                                    exceptions in the main program.
                       imprecise  - Only check for the specified exceptions
                                    on subprogram entry and exit.
       -qfree=<suboption>
                     Indicates the source form of the code.  <suboption> is
                     one of:
                       ibm   -  States that Fortran code is in IBM free source
                                form.
                       f90   -  States that Fortran code is in Fortran 90
                                free source form.
       -qhalt=<sev>  Stops compiler after first phase if severity of errors
                     detected equals or exceeds <sev>.  <sev> is one of:
                       I  -  Informational messages.
                       L  -  Language-level messages.
                       W  -  Warning messages.
                       E  -  Error messages.
                       S  -  Severe error messages.
                       U  -  Unrecoverable error messages.
                       Q  -  Prevents the compiler from halting.
       -qhot[=arraypad]
                     Performs additional loop optimization and pads array
                     dimensions to prevent cache misses.
       -qhpf[=<subopt1>[=<val1>][:...:<suboptN>[=<valN>]]]
                     Specifies that the program is an HPF program.  This
                     enhances optimization through the use of data
                     distribution directives.  Suboptions include:
                       nocommoninit - Specifies that no data in common
                                      blocks is initialized.
                       nopurecomm   - Specifies that pure procedures will not
                                      require interprocessor communication.
                       overlap=<num>
                                    - Specifies the amount of extra space
                                      to be allocated in BLOCK distributed
                                      array dimensions for nearest-neighbor
                                      computations.  The default value is 2.
                       sequence     - Specifies that any data object that is
                                      not mapped is sequential.
       -qieee=<suboption>
                     Specifies the rounding mode for the compiler to use when
                     evaluating constant floating-point expressions at compile
                     time.  <suboption> is one of:
                       Near  -  Round to nearest representable number.  This
                                is the default.
                       Minus -  Round toward minus infinity.
                       Plus  -  Round toward plus infinity.
                       Zero  -  Round toward zero.
       -qinit=f90ptr Sets the initial values of pointers to null, and makes
                     their association status disassociated instead of
                     undefined.
       -qinitauto[=<hex_value>]
                     Initializes each byte of storage for automatic variables
                     to a specific value (typically 00 or FF), to help locate
                     variables that are referenced before being defined.
                     This option does not affect most HPF arrays, which are
                     allocated at run time.
       -qintsize=<bytes>
                     Sets the size of default INTEGER and LOGICAL values.
       -qipa=<subopt1>[=<val1>][:<subopt2>[=<val2>][:...:<suboptN>[=<valN>]]]
                     Enhances -O optimization by doing detailed analysis
                     across procedures.  One of -O, -O2, or -O3 is required
                     when using -qipa.  This option is only supported when
                     the -qnohpf option is specified.  Suboptions include:
                       exits=<procedure_names>
                                  - Specifies a selected set of procedures
                                    which always end the program.
                       inline=<inline-options>
                         The "ipa=inline=" command can take a colon-separated
                         list of inline options, which are as follows:
                           inline=auto - Specifies automatic inline expansion.
                           inline=<procedure_names>
                                       - Specifies a comma-separated list of
                                         procedures to try to inline.
                           inline=limit=<num>
                                       - Changes the size limits that deter-
                                         mine how much inline expansion to do.
                           inline=noauto 
                                       - Turns off automatic inline expansion.
                           inline=threshold=<num>
                                       - Specifies the upper size limit on
                                         procedures to inline.
                       isolated=<procedure_names>
                                  - Specifies a comma-separated list of
                                    procedures not compiled with -qipa and
                                    that do not directly refer to any global
                                    variable.
                       level=<level>
                                  - Determines the amount of IPA analysis
                                    and optimization performed.
                       list=[filename][short|long]
                                  - Specifies an output listing file name
                                    during the link phase, in the event that
                                    an object listing has been requested
                                    using the -qlist option.  The default
                                    name is "a.lst".  The suboptions short and
                                    long determine which files will be included.
                       lowfreq=<procedure_names>
                                  - Specifies a comma-separated list of
                                    procedures that are likely to be
                                    called infrequently during the course
                                    of a typical program run.
                       missing={unknown|safe|isolated|pure}
                                  - Specifies the default assumption for
                                    procedures not compiled with -qipa.
                       noinline=<procedure_names>
                                  - Specifies a comma-separated list of
                                    procedures which are not to be inlined.
                       noobject   - Speeds up compilation, but the object
                                    files cannot be used in non-IPA
                                    compilations.  This option is ignored if
                                    -S has been specified.
                       nostdexits - Specifies that compiler-defined exit
                                    routines cannot be optimized.
                       partition={small|medium|large}
                                  - Specifies the size of program sections
                                    that are analyzed together.  Larger
                                    partitions produce better analysis but
                                    require more storage.
                       pure=<procedure_names>
                                  - Specifies a comma-separated list of
                                    procedures not compiled with -qipa and
                                    that are "isolated", "safe", and do not
                                    modify any data objects that are visible
                                    to the caller.
                       safe=<procedure_names>
                                  - Specifies a comma-separated list of
                                    procedures not compiled with -qipa and
                                    that do not call any other part of the
                                    program.
                       stdexits   - Specifies that compiler-defined exit
                                    routines can be optimized as with the
                                    "exits" suboption.
                       unknown=<procedure_names>
                                  - Specifies a comma-separated list of
                                    procedures not compiled with -qipa and
                                    that may update global variables and
                                    dummy arguments and call other parts of
                                    the program compiled with -qipa.
                       The following new options are intended for use by the
                       linktime phase of -qipa:
                       -qlibansi  - Assumes that all functions with the name
                                    of an ANSI C defined library function are,
                                    in fact, the library functions.
                                    -qnolibansi is the default.
                       -qlibessl  - Assumes that all functions with the name
                                    of an ESSL defined library functions are,
                                    in fact, the library functions.
                                    -qnolibessl is the default.
                       -qlibposix - Assumes that all functions with the name
                                    of a POSIX 1003.1 defined library function
                                    are, in fact, the system functions.
                                    -qnolibposix is the default.
       -qlanglvl=<suboption>
                     Determines which language standard (or superset or
                     subset of a standard) to check against for nonconformance.
                     Suboptions include:
                       77std      - Accepts the language specified by the
                                    ANSI F77 standard.
                       90std      - Accepts the language specified by the
                                    ISO F90 standard.
                       90pure     - Same as 90std, except that it reports
                                    errors for any obsolescent Fortran 90
                                    features used.
                       90ext      - Accepts the full Fortran 90 language
                                    plus all XL Fortran extensions,
                                    effectively turning off language-level
                                    checking.  This is the default.
       -qmaxmem=<num>
                     Limits the amount of memory used by space intensive
                     optimizations to <num> kilobytes, where <num> is
                     a positive integer.  The special <num> value -1
                     may also be used to indicate unlimited memory.
       -qmoddir=<directory>
                     Specifies the location for any .mod files that
                     the compiler writes.
       -qposition=<suboption1>[:<suboption2>]
                     Positions the file pointer at the end of the file when
                     data is written after an OPEN statement with no
                     POSITION= specifier, and the corresponding STATUS=
                     value is specified.  Suboptions include:
                       appendold
                       appendunknown
       -qrealsize=<bytes>
                     Sets the size of the default REAL, DOUBLE PRECISION,
                     COMPLEX and DOUBLE COMPLEX values.
       -qreport=<suboption> ...
                     Produces one or more reports about how the program is 
                     parallelized and optimized:
                      hpflist - Produces a report showing how the program is
                                parallelized.
                      hpfinfo - Produces a shorter parallelization report that
                                includes only performance-related messages.
                      hotlist - Produces a report showing how loops are
                                transformed.
                      smplist - Produces a report showing how the program is
                                parallelized.
       -qsigtrap[=<trap_handler>]
                     Installs a user-written trap handler in a main program.
                     To enable the xl__trace trap handler, specify -qsigtrap
                     without a trap_handler name.
       -qsmp=<suboptions>
                     Specifies that code should be produced for an SMP system.
                     Suboptions include:
                       noauto        - Automatic parallelization is turned off.
                       nested_par    - Prescriptive nested parallel constructs
                                       are parallelized by the compiler.
                       schedule=<suboptions>  where suboptions are:
                         affinity[=n]  See the User's Guide for details.
                         dynamic[=n]   See the User's Guide for details.
                         guided[=n]    See the User's Guide for details.
                         runtime       Default.  See the User's Guide for
                                       details.
                         static[=n]    See the User's Guide for details.
                       threshold[=n] - Controls the amount of loop
                                       parallelization that occurs.
       -qspillsize=<bytes>
                     The long form of -NS.  See the -N Option.
       -qsuffix=<option>=<suffix>
                     Specifies the source-file suffix on the command line
                     instead of in the .cfg file.  Options include:
                       f=<suffix>  - Where <suffix> represents the new
                                     source-file-suffix.
                       o=<suffix>  - Where <suffix> represents the new
                                     object-file-suffix.
                       s=<suffix>  - Where <suffix> represents the new
                                     assemble-source-file-suffix.
                       cpp=<suffix>- Where <suffix> represents the new
                                     preprocessed-source-file-suffix.
       -qsuppress=<nnnn-mmm>[:nnnn-mmm ...]
                     Suppresses generation in the output stream and in the
                     listing file of the compiler message(s) indicated.
                     Where <nnnn-mmm> is a 7 digit compiler message number.
       -qtbtable={none | small | full}
                     Specifies how much traceback information to include in
                     object files, which can reduce file size but limit
                     debugging and profiling.
       -qtune=<option>
                     Specifies the architecture on which the executable
                     program is optimized.  Suboptions include:
                       601        - Produces an object optimized for all
                                    the PowerPC 601 processors.
                       603        - Produces an object optimized for all
                                    the PowerPC 603 processors.
                       604        - Produces an object optimized for all
                                    the PowerPC 604 processors.
                       auto       - Automatically detects the specific
                                    processor type of the compiling machine.
                       pwr        - Produces an object optimized for the
                                    POWER hardware platforms.
                       pwr2/pwrx  - Produces an object optimized for the
                                    POWER2 hardware platforms.
                       pwr2s      - Produces an object optimized for a
                                    subset of POWER2 hardware platforms,
                                    the desktop models with narrow memory
                                    bandwidth.
                       rs64a      - Produces an object optimized for the
                                    PowerPC RS64A processor.
       -qxflag=<suboptions>
                     Where suboptions include:
                       dd24       - Generates floating-point no-op instructions
                                    to detect overflow in rounding floating-
                                    point intermediate results to single-
                                    precision.
                       oldtab     - For fixed source form programs. This
                                    suboption interprets a tab in columns 1 to
                                    5 as a single character and is included
                                    for compatibility with XL Fortran
                                    Version 1.
                       xalias     - Obsolete.  Replaced by -qalias=nostd.
       -qxlf77=<settings>
                     Provides backward compatibility with the XL Fortran
                     language from previous versions, for aspects of
                     language semantics and I/O data format that have
                     changed.
                     Suboptions include:
                       noblankpad - Produces conversion errors when reading
                                    from an internal or direct-access file
                                    if the format requires more characters
                                    than the record contains.
                       gedit77    - Uses FORTRAN 77 semantics for the output
                                    of REAL objects with the G edit descriptor.
                       intarg     - Converts all the integer arguments of
                                    an intrinsic procedure to the kind of
                                    the longest argument, if they are of
                                    different kinds.
                       intxor     - Treats .XOR. as a logical binary intrinsic
                                    operator rather than a defined operator.
                       noleadzero - Does not produce a leading zero in real
                                    output under the D, E, F and Q edit
                                    descriptors.
                       oldboz     - Turns blanks into zeros for data read by
                                    B, O, and Z edit descriptors, regardless
                                    of the BLANK= specifier or any BN or BZ
                                    control edit descriptors.
                       persistent - Saves the addresses of arguments to
                                    subprograms with ENTRY statements in
                                    static storage, for compatibility with
                                    XL Fortran Version 2.
                       softeof    - Allows READ and WRITE operations when a
                                    unit is positioned after its endfile
                                    record, unless that position is the result
                                    of executing an ENDFILE statement.
       -qxref[=<option>]
                     Determines whether or not to produce the cross-reference
                     component of the attribute and cross-reference section
                     of the listing.  If -qxref is specified alone, only
                     identifiers that are used are reported.  If -qxref=full
                     is specified, the full cross-reference listing is produced,
                     whether referenced or not.

  For a detailed description of each option, please refer to the
  XL Fortran for AIX, User's Guide.