Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ ftn — Apollo

Media Vault

Software Library

Restoration Projects

Artifacts Sought

1989.1 Compiler Release; ftn (fortran), revision 1.0, 89/08/02
ftn (fortran) - compile a fortran program
ftn name    [-ac|-pic]
            [-b [file]|-nb]
            [-ncond|-cond]
            [-config name1 name2...]
            [-cpu id]
            [-db|-dbs|-dba|-ndb]
            [-dynm|-save]
            [-nexp|-exp]
            [-ff]
            [-nfrnd|-frnd]
            [-i*4|-i*2]
            [-idir pathname]
            [-nindexl|-indexl]
            [-info [n]]
            [-inlib pathname]
            [-inline char]
            [-nl|-l [file]]
            [-l*4|-l*1,-l*2]
            [-msgs|-nmsgs]
            [-nclines]
            [-opt [n]|-nopt]
            [-nsubchk|-subchk]
            [-ntype|-type]
            [-u]
            [-uc]
            [-version]
            [-warn|-nwarn]
            [-nxref|-xref]
            [-xrs|-nxrs]
            [-nzero|-zero]




DESCRIPTION
     ftn translates a FORTRAN source file into one or more binary object
     modules, which can be executed or used as input to the binder.  Source
     files may be a maximum of 32767 lines long.  For complete information,
     see the Domain FORTRAN Language Reference and the Domain FORTRAN Software
     Release Document for Versions 10.6 and 10.7.

     You can typically improve run-time performance if you compile your code
     using the -cpu option with a processor-specific id. Use an argument
     appropriate to the CPU type of the machine(s) on which you will run the
     executable file.  The option -cpu 3000, for example, generates optimal
     code for the DSP90, DN330, DN560, DN570, DN580, DN3000, DN3500, DN4000,
     and DN4500 processors.

ARGUMENTS
     source_file (required)
               Specify the source file to be compiled.  If you specify the
               pathname without an .ftn suffix, the compiler automatically
               appends .ftn, and searches for that filename. If not found, it
               searches for the pathname that you typed. If not found, the
               compiler reports an error.

OPTIONS
     -ac (default)
          Compile using absolute code. This switch only applies when you
          generate 680x0 code.

     -pic Compile using Position Independent Code. This switch only applies
          when you generate 680x0 code.

     -align (default)
          Use longword alignment. Obsolete switch.

     -nalign
          No longword alignment. Obsolete switch.

     -b [file] (default)
          Generate binary file named file.bin.  If argument is omitted, binary
          file is named source_file.bin.

     -nb  Suppress binary file.

     -cond
          Compile lines with D in column 1.

     -ncond (default)
          Ignore lines with D in column 1.

     -config name1 name2...
          Conditional processing: compile statements associated with name1,
          name2, etc. via conditional compiler directives.

     -cpu id
          Generate code for a particular class of processors.  Using a
          processor-specific code generation mode can result in programs that
          run faster.  Values for id are

          any            Generate default target code for the workstation on
                         which you compile.  This value is obsolete. Use a88k
                         or m68k.

          a88k           Generate code for Series 10000 workstations.  This
                         value is the default for the DN10000 processor.  Use
                         this value when you run the compiler on a 680x0-based
                         workstation and you want to generate code that will
                         run on a Series 10000 workstation.

          m68k           Generate code for 680x0-based workstations.  This
                         value is the default for the M680x0 processor.  Use
                         this value when you run the compiler on a Series
                         10000 workstation and you want to generate code that
                         will run on a 680x0-based workstation.

          160,460,660    Generate code that uses the additional instructions
                         supported by DNx60 (except the DN560) and DSP160
                         processors.  These three values are synonyms.

          90, 330, 560, 570, 580, 3000
                         Generate code that uses the additional instructions
                         supported by the DSP90, DN330, DN560, DN570, DN580,
                         DN3000, DN3500, DN4000, and DN4500 processors.  These
                         six values are synonyms.

          peb            Generate code for a Performance Enhancement Board.

          fpx            Generate code for the floating-point accelerator
                         (FPX) that is available with the DN5xx workstations.
                         This switch can produce substantially faster code.
                         Do not use this switch, however, if the target
                         machine does not have an FPX board.

          fpa1           Produce optimized code for the Floating-Point
                         Accelerator (FPA) board that is available with the
                         DN3500, DN4000, and DN4500 workstations.  This switch
                         can produce substantially faster code.  Do not use
                         this switch, however, if the target machine does not
                         have an FPA board.

     -db (default)
          Generate runtime debug line number table (for traceback).

     -dbs Generate full runtime debug tables with symbol table. NOTE:  This
          option does not affect the -opt level.

     -dba Identical to -dbs except that no optimization is performed, even if
          you also specify -opt.

     -ndb Suppress runtime debug tables.

     -dynm (default)
          Allocate local variables on stack if possible.

     -save
          Allocate all local variables in static space.

     -exp Generate expanded code listing (implies -l). NOTE: You can not use
          -exp and -xref on the same command line.

     -nexp (default)
          Suppress expanded code listing.

     -ff  Activate free format:  length of source lines may be up to 1024
          characters; an ampersand (&) in column 1 specifies a continuation
          line.

     -frnd
          Store and round floating point numbers before comparisons.  This
          switch only applies when you generate 680x0 code.

     -nfrnd (default)
          Do not round floating point numbers.  This switch only applies when
          you generate 680x0 code.

     -i*2 2-byte integer is default integer type.

     -i*4 (default)
          4-byte integer is default integer type.

     -idir pathname
          Add a pathname to the search hierarchy of directories for include
          file names.  The hierarchy applies only to file name strings which
          do NOT begin with '.', '~', or '/'.  Up to 63 -idir options may be
          given.  The compiler first tries to open the include file name as
          given.  Failing that, it prefixes the given include file name with
          the -idir pathnames in the same order as supplied on the command
          line.

     -indexl
          Use 32 bit indexing on all common and dummy argument arrays.

     -nindexl (default)
          Indexing based on dimension information.

     -info [n]
          Default is n=2.  Display information messages to nth level.

     -inlib pathname
          Load pathname (a pic binary file) at runtime and resolve global
          references.

     -inline char
          Select specified character ("char") as in-line comment designator.

     -l [file]
          Generate compilation listing.  If pathname is omitted, use
          source_file.lst.

     -nl (default)
          Suppress compilation listing.

     -l*1 1-byte logical is default logical type.

     -l*2 2-byte logical is default logical type.

     -l*4 (default)
          4-byte logical is default logical type.

     -msgs (default)
          Generate final error and warning count message.

     -nmsgs
          Suppress final error and warning count message.

     -nclines
          Suppress generation of COFF line number tables.  Applies only to
          680x0 target compilers.

     -opt [n] (default)
          Perform global optimization. 'n' is a single digit integer in the
          range 0 to 4, indicating the level of optimization performed.  If
          'n' is omitted, 3 is the default level.  -opt 0 is identical to the
          obsolete switch -nopt.  -opt 3 is identical to the obsolete switch
          -optall.  Increasing the optimization level results in faster
          execution of your program, at the expense of longer compilation
          time.  Special restrictions apply to the use of -opt 4.  See the
          Domain FORTRAN Language Reference manual for details.

     -optall
          Perform global program optimization.  Obsolete switch.  Use -opt 3.

     -nopt
          Suppress global optimization.  Obsolete switch.  Use -opt 0.

     -peb Generate inline code for Performance Enhancement Board.  Obsolete
          switch.  Use -cpu peb.

     -npeb (default)
          No inline code for Performance Enhancement Board.  Obsolete switch.
          Use -cpu any.

     -prasm (default)
          Create expanded compiler listings in Series 10000 assembler format.
          This switch applies only when you generate Series 10000 code.

     -nprasm
          Create expanded compiler listings in a format similar to 680x0
          format.  This switch applies only when you generate Series 10000
          code.

     -subchk
          Subscript checking.

     -nsubchk (default)
          Suppress subscript checking.

     -type
          Flag all variables and functions not explicitly typed.

     -ntype  (default)
          Suppress type checking.

     -u   Turn on case sensitivity for identifiers.

     -uc  Turn on UNIX* Compatibility features: appended underscore to
          subprogram and common block names; UNIX version of default
          filenames; hidden character length variable passed as 4-byte integer
          by value.

     -version
          Display version number of compiler.

     -warn  (default)
          Display warning messages.

     -nwarn
          Suppress warning messages.

     -xref
          Generate symbol table map and cross reference (implies -l). NOTE:
          You can not use -exp and -xref on the same command line.

     -nxref (default)
          Suppress symbol table map and cross reference.

     -xrs (default)
          Save registers across a call to an external procedure or function.

     -nxrs
          Do not assume that calls to external routines have saved the
          registers.

     -zero
          Initialize static storage to zero.

     -nzero  (default)
          No implicit initialization of static storage to zero.

EXAMPLES
     $ ftn graph.line -l     Compile source file graph.line.ftn
                             in the current working directory;
                             produce binary graph.line.bin and
                             list file graph.line.lst, also in
                             current working directory.




Typewritten Software • bear@typewritten.org • Edmonds, WA 98026