UITS

UA Home UITS Home UA Search

f95/f90 Manpage

Modified: May 20 2002


NAME                  Last change: 00/04/03  Sun  WorkShop 6
     f95, f90 -	Fortran	95 compiler
	   

SYNOPSIS
     May be invoked by either f95 or f90 commands; they	are
     equivalent.

     f95 | f90 [ -a ] [	-aligncommon[=a] ] [ -ansi ]
	  [ -autopar ] [ -Bx ] [ -C ] [	-c ] [ -cg89 ] [ -cg92 ]
	  [ -Dnm[=def] ] [ -dalign ]
	  [ -db	] [ -dbl_align_all=y ] [ -depend ] [ -dryrun ]
	  [ -d[y|n] ] [	-e ] [ -erroff=taglist ]
	  [ -errtags ] [ -explicitpar ]	[ -ext_names=e ]
	  [ -F ] [ -f ]	[ -fast	] [ -fixed ] [ -flags ]
	  [ -fnonstd ] [ -fns=yes|no ] [ -fpover=yes|no	]
	  [ -fpp ] [ -free ] [ -fround=r ] [ -fsimple ]
	  [ -ftrap=t ] [ -G ] [	-g ] [ -hnm ] [	-help ]	[ -Idir	]
	  [ -inline=rl ] [ -Kpic ] [ -KPIC ]
	  [ -Ldir ] [ -libmil ]	[ -loopinfo ] [	-M dir ]
	  [ -mp=x ] [ -mt ] [ -native ]	[ -noautopar ]
	  [ -nodepend ]	[ -noexplicitpar ]
	  [ -nolib ] [ -nolibmil ] [ -noqueue ]	[ -noreduction ]
	  [ -norunpath ] [ -O[n] ] [ -o	nm ]
	  [ -onetrip ] [ -openmp ] [ -p	] [ -pad[=p] ]
	  [ -parallel] [ -pg ] [ -pic ]	[ -PIC ]
	  [ -Qoption pr	ls ] [ -qp ] [ -R ls ] [ -r8const ]
	  [ -reduction ] [ -S ]	[ -s ] [ -sb ] [ -sbfast ]
	  [ -silent ] [	-stackvar ] [ -stop_status=yes|no ]
	  [ -temp=dir ]	[ -time	] [ -U ] [ -u ]	[ -unroll=n ]
	  [ -V ] [ -v ]	[ -vpara ] [ -w	]
	  [ -xa	] [ -xarch=a ] [ -xautopar ] [ -xcache=c ]
	  [ -xcg89 ] [ -xcg92 ]	[ -xchip=c ]
	  [ -xcode=v ] [ -xcommonchk=yes|no ]
	  [ -xcrossfile=n ] [ -xdepend ] [ -xexplicitpar ]
	  [ -xF	] [ -xhelp=h ] [ -xia[=i] ] [ -xildoff ]
	  [ -xildon ] [	-xinline=rl ] [	-xinterval=i ]
	  [ -xlibmil ] [ -xlibmopt ] [ -xlicinfo ]
	  [ -xlic_lib=sunperf ]
	  [ -Xlist ] [ -xloopinfo ] [ -xmaxopt[=n] ]
	  [ -xmemalign[=ab] ] [	-xnolib	] [ -xnolibmil ]
	  [ -xnolibmopt	] [ -xO[n] ] [ -xpad ]
	  [ -xparallel ] [ -xpg	]
	  [ -xpp=p ] [ -xprefetch=yes|no ] [ -xprofile=p ]
	  [ -xrecursive	] [ -xreduction	] [ -xregs=r ] [ -xs ]
	  [ -xsafe=mem ]
	  [ -xsb ] [ -xsbfast ]	[ -xspace ] [ -xtarget=t ]
	  [ -xtime ] [ -xtypemap=spec ]	[ -xunroll=n ]
	  [ -xvector=yes|no ] [	-Zlp ] [ -z X ]	[ -ztext ]
	    source file(s) ...	[ -lx ]


DESCRIPTION
     Sun WorkShop(TM) 6	 Fortran 95

     See the online READMEs/fortran_95 file (viewable by running
     f95 -xhelp=readme)	for current platforms and environments
     and latest	information on new or changed features.


     Purpose:  Translate Fortran source	files into an executable
     (a.out) file

     Other uses	of the compiler:

     o	Make an	executable for multiple	processors, -parallel
     o	Do global checking of the source program, -Xlist
     o	Transform source to relocatable	binary (.o) files, -c
     o	Transform source to a dynamic library (.so) file, -G
     o	Prepare	for debugging, -g
     o	Prepare	for profiling by statement or procedure, -pg
     o	Link .o	files into an executable file
     o	Relink only the	changed	files, -xildon
	The Incremental	Link Editor, ild, is sometimes used in
	place of the standard linker, ld, for faster development.
	See -xildon and	-xildoff for more information.

     Note:  A man page,	by definition, is a quick reference, not
     a complete	reference. See the list	of Sun documentation at
     the end of	this man page.

COMPILING FOR 64-BIT SOLARIS ENVIRONMENTS:
     This version of the compiler can produce 64-bit object
     binaries on 32-bit	or 64-bit Solaris 7 or 8 SPARC Platform
     Editions.	The resulting executable will run only on 64-bit
     SPARC or UltraSPARC processors under Solaris 7 or 8 with the
     64-bit kernel.  Compilation, linking, and execution of 64-
     bit objects can only take place in	a Solaris 7 and	8
     environment.

     Compiling for a 64-bit Solaris environment	is indicated by
     the -xarch=v9, v9a, or v9b	options. Note that one of these
     options must be specified even if -xtarget	or -fast are also
     specified.	In such	a case,	the -xarch= option must	appear
     AFTER any -xtarget	or other option	that sets -xarch. For
     example:

	   -xtarget=ultra -xarch=v9

     Note that -xtarget=ultra and -xtarget=ultra2 imply	-xarch=v8
     and do not	automatically cause 64-bit compilations.

     When building shared dynamic libraries with -xarch=v9 or v9a
     in	a 64-bit Solaris environment, the -pic or -PIC option


     MUST be specified.

     See also the new -xcode=abs32|abs44|abs64|pic13|pic32 option
     for specifying code address sizes.

     64-bit Solaris operating environments not only enable 64-bit
     integer and pointer data, but also	support	for large files
     and large arrays.	For more details on compiling for 64-bit
     Solaris operating environments, see the README file:

      /SUNWspro/READMEs/64bit_Compilers

     (where 	is usually /opt	in a standard
     install.)

     For general information on	64-bit Solaris for software
     developers, see the "Solaris 7 64-bit Developer's Guide" on
     AnswerBook2 and at	http://docs.sun.com/

FILE SUFFIXES
     .f90 .f95
	  File names ending in .f95 or .f90 are	assumed	to be
	  Fortran 95 free format source	files.

     .f	.for
	  Files	with names ending in .f	or .for	are taken to be
	  fixed	format Fortran 95 or Fortran 77	source files.

     .F	  Fixed	format Fortran 77 or Fortran 95	source containing
	  preprocessor directives. These files are preprocessed
	  by the Fortran preprocessor fpp before they are com-
	  piled. (See also the -xpp= option.)

     .F90 .F95
	  Files	ending in .F95 or .F90 are assumed to be free
	  format Fortran 95 source containing preprocessor direc-
	  tives.  These	files are preprocessed by the Fortran
	  preprocessor fpp before they are compiled.  (See also
	  the -xpp= option.)

     .s	  Files	with names ending in .s	are taken to be	assembly
	  source files and are assembled, producing .o files.

     .il  Files	with names ending in .il are taken to be inline
	  expansion code template files.  The compiler uses these
	  to expand inline calls to selected routines.	The com-
	  piler, not the linker, does this, so to get inline
	  expansion, be	sure to	include	these .il files	in the
	  compile command.

     .o	  Files	ending in .o are object	files that are passed to
	  the linker.


     .so  Files	ending in .so are shared object	files or
	  libraries that are passed to the linker.

     .a	  Files	ending in .a are libraries passed on to	the
	  linker.

OPTIONS
     For details, check	the Fortran User's Guide. See ld(1) for
     link-time options.

     f95 compiles "silently". Except for error and warning mes-
     sages, it does not	issue "progress" messages during compila-
     tion.

     In	general, processing of the compiler options is from left
     to	right, so selective overriding of macro	options	can be
     done. This	rule does not apply to linker or preprocessor
     options.

     -a	  Profile by basic block for tcov.

	  Count	how often each basic block is executed.	Run
	  tcov(1) on the source	file to	generate statistics about
	  the program.

	  For separate compile and link	steps, if you compile
	  with -a, then	link with -a.  You can mix -a with -O.

	  When the program is run, a .d	file is	created	for every
	  .f file compiled that	accumulates execution data for
	  the corresponding source file. Invoking tcov after run-
	  ning the program generates summary output on file.tcov
	  for each source file.

	  If set at compile-time, the TCOVDIR environment vari-
	  able specifies the directory where the .d and	.tcov
	  files	are located.  If this variable is not set, these
	  file will be created in the same directory as	the
	  source files.

	  This is the old style	of basic block profiling for
	  tcov.	 See -xprofile=p.

     -aligncommon[=1|2|4|8|16]
	  Specify alignment of data in common block.

	  The value specified indicates	the desired alignment
	  size (in bytes) of data elements within common blocks.
	  For example, -aligncommon=4 would indicate that all
	  common block data elements of	size 4 bytes or	larger
	  will be aligned on 4-byte boundaries.	 Data in common
	  smaller than the specified size are not affected by
	  this option and are aligned on their respective natural
	  boundaries.

	  The default, when -aligncommon is not	specified, is to
	  align	common block data on at	most 4-byte boundaries.

	  Specifying -aligncommon without a value defaults to 1
	  on all platforms: all	data aligns on byte boundaries
	  (no padding between elements).

	  See also -xmemalign

     -ansi
	  Identify non-standard	extensions found in the	source
	  files	being compiled.

     -autopar
	  Enable automatic loop	parallelization

	  Parallelization features require a Sun WorkShop HPC
	  license.

	  Find and parallelize appropriate loops. Do dependency
	  analysis (analyze loops for data dependencies). Do loop
	  restructuring.  If optimization is not -O3 or	higher,
	  it is	raised to -O3.

	  To improve performance, also specify the -stackvar
	  option when using any	of the parallelization options,
	  including -autopar.

	  Avoid	-autopar if you	do your	own thread management.
	  See note under -mt.

	  Also,	-autopar is inappropriate on a single-processor
	  system, and will degrade performance.

	  For more information,	see the	Parallelization	chapter
	  in the Fortran Progammer's Guide.

	  Number of Threads:  To run a parallelized program in a
	  multithreaded	environment, you must set the PARALLEL or
	  OMP_NUM_THREADS envrionment variables	prior to execu-
	  tion.	This tells the runtime system the maximum number
	  of threads the program can create. The default is 1.
	  In general, set PARALLEL or OMP_NUM_THREADS to the
	  available number of processors on the	target platform.

	  If -autopar is specified but -explicitpar is not, then
	  explicit parallelization directives are ignored.

	  If you use -autopar and compile and link in one step,
	  linking will automatically include the microtasking
	  library and the threads-safe FORTRAN runtime library.
	  If you use -autopar and compile and link in separate
	  steps, then you must link with f95 -autopar as well.

     -Bx  Prefer dynamic or require static library linking.

	  Indicates that either	dynamic	library	linking	is pre-
	  ferred, or static linking required for any libraries
	  listed later in the command.	x must be dynamic or
	  static.  The default is dynamic.  This is a linker
	  option.

	  -Bdynamic:  Prefer dynamic linking (shared libraries)
	  -Bstatic :  Require static linking (no shared
	  libraries)

	  If you specify static	but the	linker finds only a
	  dynamic library, then	the library is not linked and a
	  warning issued.

	  However, if you specify dynamic but the linker finds
	  only a static	version, that library is linked	with no
	  warning.

	  You can toggle between -Bdynamic and -Bstatic	on the
	  command line,	linking	some libraries statically and
	  others dynamically.

	  These	are linker options. Compiling with -Bx requires
	  the same options on a	linker command if done in
	  separate steps.

	  In a 64-bit environment, many	system libraries are
	  available only as shared dynamic libraries. These
	  include libm.so and libc.so (libm.a and libc.a are not
	  provided). As	a result, -Bstatic and -dn may cause
	  linking errors in 64-bit Solaris environments. Applica-
	  tions	must link with the dynamic libraries in	these
	  cases.

     -C	  Check	array references for out of range subscripts.

	  Subscripting arrays beyond their declared sizes may
	  result in unexpected results,	including segmentation
	  faults. The -C option	checks for possible array sub-
	  script violations in the source code and during execu-
	  tion.

	  With the -C option specified,	run-time array subscript
	  violations are treated as an error. The compiler will
	  also flag array subscript range violations in	the
	  source code as warnings.

	  This option will increase the	size of	the executable
	  file and degrade execution performance.  It should only
	  be used while	debugging.

     -c	  Compile only,	do not make executable file.

	  Compile and produce a	.o file	for each source	file but
	  suppress linking by the loader.  You can name	a single
	  object file explicitly using the -o option.

     -cg89
	  Generate code	for generic SPARC architecture (Obsolete)

	  This option is a macro for:
	     -xarch=v7 -xchip=old -xcache=64/32/1
	  and is equivalent to:	  -xtarget=ss2

     -cg92
	  Generate code	for SPARC V8 architecture (Obsolete)

	  This option is a macro for:
	  -xarch=v8 -xchip=super -xcache=16/32/4:1024/32/1.
	  and is equivalent to:	    -xtarget=ss1000

     -Dname[=def]
	  Define symbol	name for the source code preprocessor.

	  This is equivalent to	a #define directive in the
	  source. If no	def is given, name is defined as 1. This
	  option applies to .F .F90 .F95 suffix	files only.

	  The following	values are predefined on appropriate sys-
	  tems;	note the two leading underscores:

	     __sparc, __sparcv9, __unix, __sun,	__SVR4,
	     __SunOS_5_6, __SunOS_5_7, __SunOS_5_8

	  They can be in such preprocessor conditionals	as
	     #ifdef __sparc

	  Corresponding	older values (prior releases) are:
	      sparc, unix, sun,

	  These	earlier	predefined values may be deleted in a
	  future release.

	  f95 uses the fpp(1) preprocessor by default. Like the	C
	  preprocessor cpp(1), fpp expands source code macros and
	  enables conditional compilation of code. Unlike cpp,
	  fpp understand Fortran syntax, and is	preferred as a
	  Fortran preprocessor.	Use the	-xpp=cpp flag to force
	  the compiler to specifically use cpp rather than fpp.

     -dalign
	  Align	COMMON block data and generate faster multi-word
	  load/stores.

	  This flag changes the	data layout in COMMON blocks (and
	  EQUIVALENCE classes),	and enables the	compiler to gen-
	  erate	faster multi-word load/stores for that data.

	  -dalign is a macro equivalent	to
		-xmemalign=8s -aligncommon=8

	  The data layout effect is that of the	-f flag: double-
	  and quad-precision data in COMMON blocks and
	  EQUIVALENCE classes are laid out in memory along their
	  "natural" alignment, which is	on 8-byte boundaries (or
	  16-byte boundaries for quad-precision	when compiling
	  for 64-bit platforms with -xarch=v9, v9a, or v9b.)  The
	  default alignment in COMMON blocks is	on 4-byte boun-
	  daries.

	  Using	-dalign	along with
	  -xtypemap=real:64,double:64,integer:64 or -dbl also
	  causes 64-bit	integer	variables to be	double-word
	  aligned.

	  Using	-dalign, may result in non-standard FORTRAN
	  alignment which could	cause problems with variables in
	  EQUIVALENCE or COMMON	and may	render the program non-
	  portable if -dalign is required.

	  If you compile one subprogram	or file	with -dalign,
	  then all subprograms and files in the	program	unit must
	  be compiled with -dalign.

     -db  Generate optional CIF	file.

	  Generates an optional	compiler information file (CIF)
	  with the extension .T	This file is sometimes needed by
	  the Sun WorkShop Source Browser.  The	CIF file is gen-
	  erated automatically when -Xlist options are used. The
	  -db option can be used to regenerate the CIF file
	  without -Xlist.

     -dbl_align_all=yes|no
	  Force	alignment of all data on 8-byte	boundaries.

	  If yes all variables will be aligned on 8-byte boun-
	  daries. Default is -dbl_align_all=no.	By itself,
	  -dbl_align_all is equivalent to -dbl_align_all=yes.
	  When compiling for 64-bit environments with -xarch=v9
	  or v9a, this flag will align quad-precision data on
	  16-byte boundaries.

	  This flag does not alter the layout of data in COMMON
	  blocks or user-defined structures.

	  If used, all routines	must be	compiled with this
	  option.

     -depend
	  Analyze loops	for data dependencies

	  Analyze loops	for data dependencies and do loop res-
	  tructuring. Data dependency analysis is included as
	  part of -fast, -parallel and -autopar.  -depend will
	  raise	the optimization level to -O3 if not specified or
	  is less than -O3.

     -dryrun
	  Show commands	built by the f95 driver	but do not com-
	  pile.

	  Useful when debugging, this option displays the com-
	  mands	the comiler will run to	perform	the compilation.

     -d[y|n]
	  Allow/disallow dynamic libraries for executable

	  Allow	or disallow dynamic libraries for the entire exe-
	  cutable. This	flag is	a linker option.

	  The default is -dy.

	  -dy:	Allow dynamic libraries.
	  -dn:	Do not allow dynamic libraries.

	  Unlike -B[dynamic|static], this option applies to the
	  whole	executable and need appear only	once on	the com-
	  mand line.

	  -d[y|n] are linker options. If you compile and link in
	  separate steps with these options, then you need the
	  same option in the final link	step.

	  In a 64-bit environment, many	system libraries are
	  available only as shared dynamic libraries. These
	  include libm.so and libc.so (libm.a and libc.a are not
	  provided). As	a result, -Bstatic and -dn may cause
	  linking errors in 64-bit Solaris environments. Applica-
	  tions	must link with the dynamic libraries in	these
	  cases.

     -e	  Extend source	line maximum length to 132 characters.

	  The compiler pads on the right with trailing blanks to
	  column 132.  If you use continuation lines while com-
	  piling with -e, then do not split character constants
	  across lines,	otherwise unnecessary blanks may be
	  inserted in the constants.

     -erroff=taglist
	  Supress warning messages listed by tag name.

	  The taglist specifies	a list of comma-separated tag
	  names	that appear with warning messages. If the list
	  consists of %all all warnings	are suppressed (this is
	  equivalent to	the -w option.)	(See also -errtags.)

     -errtags
	  Display the message tag with each warning message.

	  The compiler's internal error	tag name appears along
	  with error messages. The default is not to display the
	  tag.

     -explicitpar
	  Enable parallelization of loops or regions explicitly
	  marked with directives

	  Parallelization features require a Sun WorkShop HPC
	  license.

	  The compiler will generate parallel code even	if there
	  are data dependencies	in the DO loop that would cause
	  the loop to generate incorrect results when run in
	  parallel. With explicit parallelization, it is the
	  user's responsibility	to correctly analyze loops for
	  data dependency problems before marking them with
	  parallelization directives.

	  This option enables Sun, Cray, and/or	OpenMP explicit
	  parallelization directives. DO loops immediately pre-
	  ceded	by parallelization directives will have	threaded
	  code generated for them. Parallelization is only
	  appropriate on multiprocessor	systems. This option
	  should not be	used to	compile	programs that already do
	  their	own multithreading with	calls to the libthread
	  library.

	  Number of Threads:  To run a parallelized program in a
	  multithreaded	environment, you must set the PARALLEL or
	  OMP_NUM_THREADS envrionment variables	prior to
	  execution. This tells	the runtime system the maximum
	  number of threads the	program	can create. The	default
	  is 1.	 In general, set PARALLEL or OMP_NUM_THREADS to
	  the available	number of processors on	the target plat-
	  form.

	  If you use -explicitpar and compile and link in one
	  step,	then linking automatically includes the	micro-
	  tasking library and the threads-safe FORTRAN runtime
	  library.  If you use -explicitpar and	compile	and link
	  in separate steps, then link with -explicitpar.

	  See also the discussion of -autopar.

	  To improve performance, also specify the -stackvar
	  option when using any	of the parallelization options,
	  including -explicitpar.

	  Use the -mp= option to select	the style of paralleliza-
	  tion directives enabled: Sun,	Cray, or OpenMP.

	  If the optimization level is not -O3 or higher, it is
	  raised to -O3	automatically.

	  For details, see the Parallelization chapter in the
	  Fortran Programming Guide.

     -ext_names=e
	  Create external names	with or	without	underscores.

	  e must be either plain or underscores.  The default is
	  underscores.

	  plain:  Do not use trailing underscores.
	  underscores:	Use trailing underscores.

	  An external name is a	name of	a subroutine, function,
	  block	data subprogram, or labeled common.  This option
	  affects both the name	in the routine itself and, of
	  course, the name used	in the calling statement (both
	  symdefs and symrefs).

     -F	  Invoke the source file preprocessor, but do not compile

	  Apply	the fpp	preprocessor to	.F90 and .F files and put
	  the result in	the file with the suffix changed to .for
	  .f95,	but do not compile.

	  fpp is the default preprocessor for Fortran. The C
	  preprocessor,	cpp, can be selected instead by	specify-
	  ing -xpp=cpp.

     -f	  Align	double-	and quad-precision data	in COMMON blocks.

	  This flag changes the	data layout in COMMON blocks (and
	  EQUIVALENCE classes):	double-	and quad-precision data
	  in COMMON blocks and EQUIVALENCE classes are laid out
	  in memory along their	"natural" alignment, which is on
	  8-byte boundaries (or	on 16-byte boundaries for quad-
	  precision when compiling for 64-bit environments with
	  -xarch=v9, v9a, or v9b). The default alignment of data
	  in COMMON blocks is on 4-byte	boundaries.

	  This option applies to both real and complex data.

	  Resulting code may not be standard and may not be port-
	  able.

	  If you compile one subprogram	with -f, compile all sub-
	  programs of the program with -f.

	  By itself, this option does not enable the compiler to
	  generate faster double word fetch/store instructions
	  ond double and quad precision	data. Only -dalign will
	  do this.

     -fast
	  Optimize for speed of	execution using	a selection of
	  options.

	  Select the combination of options that optimizes for
	  speed	of execution without excessive compilation time.
	  This option provides close to	the maximum performance
	  for many realistic applications.

	  -fast	sets the following options:

	  o The	-xtarget=native	hardware target.
	    If the program is intended to run on a different tar-
	    get	than the compilation machine, follow the -fast
	    with the appropriate -xtarget= option. For example:
		  f95 -fast -xtarget=ultra ...

	  o The	-O5 optimization level.

	  o The	-libmil	option to inline certain math library
	    routines.

	  o The	-fsimple=2 option to optimize floating-point
	    operations.

	  o The	-dalign	option to allow	generation of faster dou-
	    ble	word load/store	instructions.

	  o The	-xlibmopt option to link the optimized math
	    library.

	  o The	-depend	option to better optimize DO loops.

	  o The	-fns option for	possibly faster	handling of
	    underflow.

	  o The	-ftrap=common option to	set trapping on	common
	    floating-point exceptions (this is the default for
	    f95).

	  o The	-f option to align double and quad data	in COM-
	    MON.

	  o The	-pad=common option to improve use of cache.

	  o The	-xvector=yes option to enable use of the vector-
	    ized math library.

	  Note that this option	is a particular	selection of
	  other	options	that is	subject	to change from one
	  release of the compiler to another, and between com-
	  pilers.  For details on the options set by -fast, see
	  the Fortran User's Guide.

	  Do not use this option with programs that depend on
	  IEEE standard	exception handling; you	can get	different
	  numerical results, premature program termination, or
	  unexpected SIGFPE signals.

	  For separate compile and link	steps: if you compile
	  with -fast, then be sure to link with	-fast.

     -fixed
	  Assume fixed-format source input.

	  Interpret all	source files as	Fortran	95 fixed-format.
	  Overrides the	file suffix.

     -flags
	  Synonym for -help.

     -fnonstd
	  Initialize floating-point hardware to	non-standard
	  preferences

	  This option is a synonym for the combination
		 -fns -ftrap=common
	  which	initializes the	floating-point hardware	to:

	  o  Abort on exceptions

	  o  Flush denormalized	numbers	to zero	if it will
	  improve speed

	  See -fns for a information on	underflow and handling of
	  denormalized numbers.

	  The -fnonstd option enables hardware traps for
	  floating-point overflow, division by zero, and invalid
	  operation exceptions.	These are converted into SIGFPE
	  signals, and if the program has no SIGFPE handler, it
	  aborts. See ieee_handler(3m),	ieee_functions(3m), the
	  Numerical Computation	Guide, and Fortran Programming
	  Guide	for more information.

     -fns[={no|yes}]
	  Select SPARC nonstandard floating point

	  Select the SPARC nonstandard floating-point mode.  The
	  default, -fns=no, is SPARC standard floating-point
	  mode.

	  Optional use of =yes or =no provides a way of	toggling
	  the -fns flag	following some other macro flag	that
	  includes -fns, such as -fast.

	  -fns is the same as -fns=yes.
	  -fns=yes selects non-standard	floating-point.
	  -fns=no selects standard floating-point.

	  On some SPARC	systems, the nonstandard floating point
	  mode disables	"gradual underflow", causing tiny results
	  to be	flushed	to zero	rather than producing subnormal
	  numbers.  It also causes subnormal operands to be
	  silently replaced by zero.  On those SPARC systems that
	  do not support gradual underflow and subnormal numbers
	  in hardware, use of this option can significantly
	  improve the performance of some programs.

	  Warning: When	nonstandard mode is enabled, floating
	  point	arithmetic may produce results that do not con-
	  form to the requirements of the IEEE 754 standard.  See
	  the Numerical	Computation Guide and the Fortran User's
	  Guide	for more information.

	  This option is effective only	if used	when compiling
	  the main program.

     -fpover[={yes|no}]
	  Detect floating-point	overflow in formatted input.

	  With -fpover=yes specified, the I/O library will detect
	  floating-point overflows in formatted	input and return
	  error	condition 1031.	The default is no such overflow
	  detection (-fpover=no). -fpover is equivalent	to
	  -fpover=yes.

     -fpp Force	preprocessing of input files with fpp.

	  Pass all the input source files listed on the	command
	  line through the fpp preprocessor, regardless	of file
	  extension. (Files with .F90, .F95, .F	extension are
	  automatically	preprocessed by	fpp. See also -xpp.)

     -free
	  Assume free-format source input.

	  Interpret all	source files as	Fortran	95 free-format.
	  Overrides the	file suffix.

     -fround=r
	  Select the IEEE rounding mode	in effect at startup.

	  r must be one	of:
		nearest, tozero, negative, positive.

	  The default is -fround=nearest.

	  When r is "tozero", "negative", or "positive", this
	  flag causes the rounding direction mode to be	set to
	  round-to-zero, round-to-negative-infinity, or	round-
	  to-positive-infinity respectively when a program begins
	  execution.  When r is	"nearest" or the -fround flag is
	  not used, the	rounding direction mode	is not altered
	  from its initial value (round-to-nearest by default).

	  This option is effective only	if used	when compiling
	  the main program.

     -fsimple[=n]
	  Select floating-point	optimization preferences

	  Allow	the optimizer to make simplifying assumptions
	  concerning floating-point arithmetic.

	  If n is present, it must be 0, 1, or 2.

	  The defaults are:
	     With no -fsimple, f95 uses	-fsimple=0
	     With only -fsimple, f95 uses -fsimple=1

	  -fsimple=0
	     Permit no simplifying assumptions.	Preserve strict
	     IEEE 754 conformance.

	  -fsimple=1
	     Allow conservative	simplifications. The resulting
	     code does not strictly conform to IEEE 754, but
	     numeric results of	most programs are unchanged.

	     With -fsimple=1, the optimizer can	assume the fol-
	     lowing:

		IEEE 754 default rounding/trapping modes do not
		change after process initialization.

		Computations producing no visible result other
		than potential floating	point exceptions may be
		deleted.

		Computations with Infinity or NaNs as operands
		need not propagate NaNs	to their results; e.g.,
		x*0 may	be replaced by 0.

		Computations do	not depend on sign of zero.

	     With -fsimple=1, the optimizer is not allowed to
	     optimize completely without regard	to roundoff or
	     exceptions. In particular,	a floating-point computa-
	     tion cannot be replaced by	one that produces dif-
	     ferent results with rounding modes	held constant at
	     run time.

	  -fsimple=2

	     Permit aggressive floating-point optimizations that
	     may cause many programs to	produce	different numeric
	     results due to changes in rounding.

	     For example, -fsimple=2 will permit the optimizer to
	     attempt replacing computations of x/y with	x*z,
	     where z=1/y is computed once and saved in a tem-
	     porary, thereby eliminating costly	divide opera-
	     tions.

	     Even with -fsimple=2, the optimizer still is not
	     permitted to introduce a floating-point exception in
	     a program that otherwise produces none.
	     -fast sets	-fsimple=2.

     -ftrap=t
	  Set floating-point trapping mode

	  This option sets the IEEE floating-point trapping that
	  is in	effect at startup.

	  t is a comma-separated list that consists of one or
	  more of the following:

	   %all, %none,	common,	[no%]invalid, [no%]overflow,
	   [no%]underflow, [no%]division, [no%]inexact.

	  The f95 default is -ftrap=common.  (Note that	the
	  default with f77 is -ftrap=%none.)

	  This option sets the IEEE 754	trapping modes that are
	  established at program initialization. Processing is
	  left-to-right. The common exceptions,	by definition,
	  are invalid, division	by zero, and overflow.	For exam-
	  ple:
	  -ftrap=overflow.

	  Example: Set all traps, except inexact.

		-ftrap=%all,no%inexact

	  The meanings are the same as for the ieee_flags func-
	  tion,	except that:

	  o %all turns on all the trapping modes, and will cause
	    trapping of	spurious and expected exceptions. Use
	    common instead.

	  o %none, the default,	turns off all trapping modes.

	  o A no% prefix turns off that	specific trapping mode.

	  To be	effective this option must be used when	compiling
	  the main program.

     -G	  Build	a dynamic shared library

	  Direct the linker to make a shared dynamic library.
	  Without -G the linker	builds an executable file. With
	  -G it	builds a dynamic library (but no executable).
	  Use -o with -G to specify the	name of	the file to be
	  written.

     -g	  Compile for debugging.

	  Produce additional symbol table information for dbx(1)
	  or the Sun WorkShop debugging	utility.


	  The -g option	makes -xildon the default incremental
	  linker option	(see -xildon).	That is, with -g, the
	  compiler default behavior is to automatically	invoke
	  ild in place of ld, unless the -G option is present, or
	  any source file is named on the command line.

     -h	nm
	  Specify the name of the generated dynamic shared
	  library

	  If the library has an	internal name, then whenever the
	  executable is	run, the linker	must find a library with
	  the same internal name; the file can be in any library
	  search path.	If the library has no internal name, then
	  the linker must find a library with the same path as
	  when it was generated.  Having an internal name allows
	  more flexibility at runtime.

	  Remarks:
	  o The	space between the -h and nm is optional.
	  o -hnm is meaningless	without	-G.
	  o -hnm is a linker option.
	  o The	names after -h and -o are usually the same.
	  o -hnm facilitates versions for dynamic libraries.

	  See the Solaris Linker and Libraries Guide.

     -help
	  List the f95 command-line options.

	  See also -xhelp.

     -Idir
	  Add dir to the include file search path.

	  Insert directory dir at the start of the include file
	  search path. No space	is allowed between -I and dir.

	  The include file search path is the list of directories
	  searched for include files. This search path is used
	  by:

	    o	The preprocessor directive #include
	    o	The f95	statement INCLUDE

	  Example: To search for include files in /usr/applib:

	      f95 -I/usr/applib	growth.F

	  Of course, to	invoke the preprocessor, you must use a
	  .F suffix; and the f95 compiler INCLUDE statement
	  allows the .f	or .F suffix.

	  The -Idir search path	is used	while searching	for rela-
	  tive path names, not absolute	path names. The	search
	  order	for relative path names	is:

	   1. The directory containing the source file
	   2. Directories named	in -I options
	   3. Directories in the default list of the compiler

	  The default list depends on installation:

	  Standard install is to /opt:
	    /opt/SUNWspro//include/f95	   /usr/include

	  where	 changes with each release of the com-
	  pilers.

     -inline=rl
	  Request inlining of the specified user-written rou-
	  tines.

	  Optimize by inlining the specified user-written rou-
	  tines	named in the list rl.  The list	is a comma-
	  separated list of functions and subroutines.

	  The rl list may include the string %auto to enable
	  automatic inlining at	optimization levels -O4	or
	  higher, which	is normally turned off when explicit
	  inlining is specified	on the command line by -inline.

	  If you prefix	the name of a routine on the list with
	  no%, inlining	of that	routine	is inhibited.

	  For example, to enable automatic inlining while disa-
	  bling	inlining of a specific routine (gflub),	use:

	     -O5 -inline=%auto,no%gflub

	  Only routines	in the file being compiled are con-
	  sidered. The optimizer decides which of these	routines
	  are appropriate for inlining.


	  A routine is not inlined if any of the following condi-
	  tions	apply, with no warnings:

	  o Optimization is less than -O3

	  o The	routine	cannot be found.

	  o Inlining it	is not profitable or safe.

	  o The	source is not in the file being	compiled. But, see
	    -xcrossfile.

     -Kpic
	  Synonym for -pic

     -KPIC
	  Synonym for -PIC

     -Ldir
	  Add dir to list of directories to search for libraries.

	  dir is added to the start of the search list.	A space
	  between -L and dir is	optional.

	  Note:	 Do not	use the	-Ldir option to	specify	/usr/lib
	  or /usr/ccs/lib, since they are searched by default,
	  and including	them here prevents using the unbundled
	  libm.

     -lx  Add library libx.a to	the linker's list of search
	  libraries.

	  Direct the loader to link with object	library	libx.a,
	  where	x is a string. See ld(1).

	  Example:  -lsumex links in the library libsumex.a

	  Order	on the Command Line:  Place -lx	options	after any
	  .f, .F, or .o	files. If you call functions in	libx, and
	  they reference functions in liby, then place -lx before
	  -ly.

	  Search Order for -lx files: the linker searches for
	  libraries in several locations. For details, see the
	  chapter, "Libraries,"	in the Fortran Programming Guide.
	  See also ld(1).

     -libmil
	  Inline selected libm math library routines for optimi-
	  zation.

	  Some of the simpler library routines can be inlined by
	  the compiler.	This option inlines library calls depend-
	  ing on the floating-point options and	platform curently
	  being	used.

     -loopinfo
	  Show which loops are parallelized

	  Show which loops are parallelized and	which are not.
	  This option is normally for use with the
	  -autopar and -explicitpar options. It	requires a Sun
	  WorkShop license and generates a list	of messages on
	  standard error.

     -Mpath
	  Specify Module directory.

	  Look in the directory	specified by path for Fortran 95
	  modules referenced in	the current compilation. This
	  path is searched in addition to the current directory.
	  By default, without this option, only	the current
	  directory is searched	for referenced module files.
	  (There is no space between the -M and	the path. For
	  example, -M/home/siri/PK15/Modules

     -mp=[%none|sun|cray|openmp]
	  Specify the style for	parallelization	directives

	  The default is sun.

	  sun:	Accept Sun-style MP directives.
	  cray:	 Accept	Cray-style MP directives.
	  openmp:  Accept OpenMP directives
	  %none:  Ignore all parallelization directives.

	  Sun-style parallelization directives start with C$PAR
	  or !$PAR.  Cray-style	parallelization	directives start
	  with CMIC$ or	!MIC$.	Either style can appear	in upper-
	  case or lowercase.

	  OpenMP directives start with C$OMP, !$OMP, *$OMP, in
	  fixed	format,	or !$OMP in free format.

	  You can combine OpenMP directives with either	Cray or
	  Sun style directives in the same compilation unit. But
	  both Sun and Cray style directives cannot both be
	  active in the	same compilation unit. For example:

	     -mp=sun,openmp  and
	     -mp=cray,openmp  are permitted, but NOT
	     -mp=sun,cray

	  You must also	specify	-explicitpar to	have these direc-
	  tives	enable parallelization.	Also, -stackvar	should be
	  specified with parallelization. For example:

	     -explicitpar -stackvar -mp=openmp

     -mt  Use multithread safe libraries

	  If you are doing your	own multithread	coding and not
	  using	-autopar, -explicitpar,	or -parallel, then you
	  must use the -mt option in the compile and link steps.
	  The parallelization options use -mt automatically.

	  On a single-processor	system,	the generated code usu-
	  ally runs more slowly	with this option.

     -native
	  Optimize for the host	system.

	  The -native option is	a synonym for the -xtarget=native
	  option.

     -noautopar
	  Cancel -autopar on the command line.

	  Cancel automatic parallelization of loops invoked by
	  -autopar on the command line.	(Parallelization options
	  require a Sun	WorkShop license.)

     -nodepend
	  Cancel -depend in command line

	  Cancel dependency analysis invoked by	a -depend option
	  appearing earlier in the command line.

     -noexplicitpar
	  Cancel -explicitpar

	  Cancel explicit parallelization of loops invoked by
	  -explicitpar earlier on the command line. (Paralleliza-
	  tion options require a Sun WorkShop license.)

     -nolib
	  Do not link with system libraries.

	  Do not automatically link with any system or language
	  library; that	is, do not pass	any default -lx	options
	  to ld.  The default is to link such libraries	into exe-
	  cutables automatically, without users	specifying them
	  on the command line.

	  The system and language libraries are	required for
	  final	execution. It is your responsibility to	link them
	  in manually. This option provides you	complete control
	  (and responsibility).

	  The -nolib option makes it easier to link these
	  libraries statically.

     -nolibmil
	  Cancel -libmil on command line

	  Use with -fast to disable inlining of	libm math rou-
	  tines:

	     demo% f95 -fast -nolibmil	...

     -noqueue
	  Disable license queueing.

	  With this option, if no license is available,	the com-
	  piler	returns	without	queuing	your request and without
	  performing any compilation.  A nonzero status	is
	  returned for testing in makefiles.

     -noreduction
	  Cancel -reduction on command line

	  -reduction is	used along with	parallelization	options.
	  This option cancels a	-reduction appearing earlier on
	  the command line. (Parallelization options require a
	  Sun WorkShop license.)

     -norunpath
	  Do not build a runtime library search	path into the
	  executable

	  If an	executable file	uses shared libraries, then the
	  compiler normally builds in a	path that tells	the run-
	  time linker where to find those shared libraries. The
	  path depends on the directory	where you installed the
	  compiler. The	-norunpath option prevents that	path from
	  being	built into the executable.

	  This option is helpful when libraries	have been
	  installed in some nonstandard	location, and you do not
	  wish to make the loader search down those paths when
	  the executable is run	at another site.  Compare with
	  -R.

     -O[n]
	  Specify optimizaion level

	  If -O[n] is not specified, only a very basic level of
	  optimization limited to local	common subexpression
	  elimination and dead code analysis is	performed.  A
	  program's performance	may be significanly improved when
	  compiled with	an optimization	level than without optim-
	  ization. Use of -O (which implies -O3) or -fast (which
	  implies -O5) is recommended for most programs.

	  Each -On level includes the optimizations performed at
	  the levels below it. Generally, the higher the level of
	  optimization a program is compiled with, the better
	  runtime performance obtained.	However, higher	optimiza-
	  tion levels may result in increased compilation time
	  and larger executable	files.

	  The -g option	can be used with optimization, -O[n], and
	  allows limited debugging.

	  If the optimizer runs	out of memory, it attempts to
	  proceed over again at	a lower	level of optimization,
	  resuming compilation of subsequent routines at the ori-
	  ginal	level.

	  For details on optimization, see the Fortran Program-
	  ming Guide chapters Performance Profiling, and Perfor-
	  mance	and Optimization.


	  -O   Optimize	at the level most likely to give close to
	       the maximum performance for many	realistic appli-
	       cations (currently -O3).

	  -O1  Do only the minimum amount of optimization
	       (peephole).

	  -O2  Do basic	local and global optimization. This level
	       usually gives minimum code size.	-O3 is preferred
	       over -O2	unless -O3 results in excessive	compila-
	       tion time, running out of swap space, or	exces-
	       sively large code size.

	  -O3  Adds global optimizations at the	function level.
	       Usually generates larger	executable files.

	  -O4  Adds automatic inlining of functions in the same
	       file. -g	suppresses automatic inlining. In gen-
	       eral, -O4 results in larger code.

	  -O5  Attempt aggressive optimizations
	       Suitable	only for that small fraction of	a program
	       that uses the largest fraction of compute time.
	       -O5's optimization algorithms take more compila-
	       tion time, and may also degrade performance when
	       applied to too large a fraction of the source pro-
	       gram.

	       Optimization at this level is more likely to
	       improve performance if it is done with profile
	       feedback. See -xprofile=p.
     -o	nm
	  Specify the name of the executable file to be	written

	  There	must be	a blank	between	-o and nm. Without this
	  option, the default is to write the executable to
	  a.out.  When used with -c, -o	specifies the target .o
	  object file; with -G it specifies the	target .so
	  library file.

     -onetrip
	  Enable one-trip DO loops.

	  Compile DO loops so they are performed at least once if
	  reached.

	  f95 FORTRAN DO loops are not performed at all	if the
	  upper	limit is smaller than the lower	limit, unlike
	  some legacy implementations of Fortran.

     -openmp
	  Enable explicit parallelization with Fortran 95 OpenMP
	  directives.

	  This option is a macro for the combination of	options:

	     -mp=openmp	-explicitpar -stackvar -D_OPENMP

	  The Fortran 95 OpenMP	directives are described in the
	  Fortran User's Guide.

	  To run a parallelized	program	in a multithreaded
	  environment, you must	set the	PARALLEL or
	  OMP_NUM_THREADS envrionment variables	prior to execu-
	  tion.	This tells the runtime system the maximum number
	  of threads the program can create. The default is 1.
	  In general, set PARALLEL or OMP_NUM_THREADS to the
	  available number of processors on the	target platform.

	  Fortran parallelization features require a Sun WorkShop
	  HPC license.

     -p	  Compile for profiling	with prof.

	  Prepare object files for profiling with prof(1).  This
	  option makes profiles	by procedure, showing the number
	  of calls to each procedure and the percent of	time used
	  by each procedure.

	  For separate compile and link	steps, if you compile
	  with -p, then	be sure	to link	with -p.

     -pad[=p]
	  Insert padding for efficient use of cache.

	  This option inserts padding between arrays or	character
	  strings if they are:
	    o	Static local and not initialized, or
	    o	In common blocks

	  For either one, the arrays or	character strings can not
	  be equivalenced.

	  If =p	is present, it must be one of the following (no
	  spaces):
	    local:  Pad	local variables
	    common:  Pad variables in common blocks
	    local,common:  Both	local and common padding is done
	    common,local:  Both	local and common padding is done

	  Defaults:
	    Without the	-pad[=p] option, no padding.
	    With -pad, without =p, local and common padding.

	  The following	are equivalent:
	    f95	-pad any.f
	    f95	-pad=local,common any.f
	    f95	-pad=common,local any.f

	  Restrictions on -pad=common:

	  o    If -pad=common is specified for a file that refer-
	       ences a common block, it	must be	specified for all
	       files that reference that common	block.

	  o    With -pad=common	specified, declarations	of common
	       block variables in different program units must be
	       the same	except for the names of	the variables.

	  o    Padding is dependent on the setting of -xcache.
	       All files must be compiled with the same	-xcache
	       settings	when -pad=common is used.

	  o    EQUIVALENCE declarations	involving common block
	       variables will cause warning messages that padding
	       has been	inhibited by EQUIVALENCE when compiled
	       with -pad=common.


     -parallel
	  Enable a combination of automatic and	explicit paral-
	  lelization features.

	  This option is a macro for a combination of options:

	     -autopar -explicitpar -depend

	  Parallelization features require a Sun WorkShop HPC
	  license.

	  Parallelize loops chosen automatically by the	compiler
	  and explicitly specified by user supplied directives.
	  Optimization level is	automatically raised to	-O3 if it
	  is lower.

	  To improve performance, also specify the -stackvar
	  option when using any	of the parallelization options,
	  including -autopar.

	  Avoid	-parallel if you do your own thread management.
	  See the discussion of	-mt

	  Parallelization options like -parallel are intended to
	  produce executables programs to be run on multiproces-
	  sor systems. On a single-processor system, paralleliza-
	  tion generally degrades performance.

	  If you compile and link in separate steps, if	-parallel
	  appears on the compile command it must also appear on
	  the link command.

	  See also the discussion of -autopar.

	  For more information,	see the	chapter	on paralleliza-
	  tion in the Fortran Programming Guide.

	  Number of Threads:  To run a parallelized program in a
	  multithreaded	environment, you must set the PARALLEL or
	  OMP_NUM_THREADS envrionment variables	prior to execu-
	  tion.	This tells the runtime system the maximum number
	  of threads the program can create. The default is 1.
	  In general, set PARALLEL or OMP_NUM_THREADS to the
	  available number of processors on the	target platform.

     -pg  Compile for profiling	with gprof.

	  Prepare the object files for profiling with gprof(1).
	  This option makes profiles by	procedure, showing the
	  number of calls to each procedure and	the percent of
	  time used by each procedure.

	  This option also produces counting code in the manner
	  of -p, but invokes a runtime recording mechanism that
	  keeps	more extensive statistics and produces a gmon.out
	  file at normal termination. You can then generate an
	  execution profile using gprof(1).

	  For separate compile and link	steps, if you compile
	  with -pg, then link with -pg.

     -pic Compile position-independent code for	shared library.

	  This option is used to create	dynamic	shared libraries.
	  Each reference to a global datum is generated	as a
	  dereference of a pointer in the global offset	table.
	  Each function	call is	generated in program-counter-
	  relative addressing mode through a procedure linkage
	  table.

	  o The	size of	the global offset table	is limited to 8Kb
	    on SPARC.

	  o Do not mix -pic and	-PIC.

	  There	are two	nominal	performance costs with -pic and
	  -PIC:

	       o A routine compiled with either	-pic or	-PIC exe-
		 cutes a few extra instructions	upon entry to set
		 a register to point at	the global offset table
		 used for accessing a shared library's global or
		 static	variables.

	       o Each access to	a global or static variable
		 involves an extra indirect memory reference
		 through the global offset table. If the compile
		 is done with -PIC, there are two additional
		 instructions per global and static memory refer-
		 ence.

	  When considering the above costs, remember that the use
	  of -pic and -PIC can significantly reduce system memory
	  requirements,	due to the effect of library code shar-
	  ing. Every page of code in a shared library compiled
	  -pic or -PIC can be shared by	every process that uses
	  the library. If a page of code in a shared library con-
	  tains	even a single non-pic (that is,	absolute) memory
	  reference, the page becomes nonsharable, and a copy of
	  the page must	be created each	time a program using the
	  library is executed.

	  The easiest way to tell whether or not a .o file has
	  been compiled	with -pic or -PIC is with the nm command:

	      nm file.o	| grep _GLOBAL_OFFSET_TABLE_

	  A .o file containing position-independent code will
	  contain an unresolved	external reference to
	  _GLOBAL_OFFSET_TABLE_	as marked by the letter	U.

	  To determine whether to use -pic or -PIC, use	nm to
	  identify the number of distinct global and static vari-
	  ables	used or	defined	in the library.	If the size of
	  _GLOBAL_OFFSET_TABLE_	is under 8,192 bytes, you can use
	  -pic.	 Otherwise, you	must use -PIC.

	  When building	shared dynamic libraries with -xarch=v9
	  or v9a on 64-bit Solaris 7, the -pic or -PIC option (or
	  their	-xcode equivalents -xcode=pic13	or -xcode=pic32)
	  MUST be specified.

	  See also -xcode.


     -PIC Similar to -pic, with	32-bit addresses

	  This allows the global offset	table to span the range
	  of 32-bit addresses. Use it for those	rare cases with
	  too many global data objects for -pic.


	  Do not mix -pic with -PIC.

	  When building	shared dynamic libraries with -xarch=v9
	  or v9a on 64-bit Solaris 7, the -pic or -PIC option (or
	  their	-xcode equivalents -xcode=pic13	or -xcode=pic32)
	  MUST be specified.

	  See also -xcode.

     -Qoption pr ls
	  Pass option list ls to the compilation phase pr.

	  This option is used primarily	by customer service.


     -qp  Synonym for -p.

     -Rlist
	  Build	library	search paths into executable

	  With this option, the	linker,	ld(1), adds a list of
	  library search paths into the	executable file.

	  list is a colon-separated list of directories	used to
	  specify library search paths to the runtime linker. The
	  list is added	to the default list that f95 passes to
	  the linker.

	  The blank between -R and list	is optional.

	  Multiple instances of	this option are	concatenated
	  together, with each list separated by	a colon.

	  Use this option if you want to export	an executable
	  that can run without any special option for paths to
	  your dynamic libraries.

	  Building an executable with this option adds paths to	a
	  default path that is always searched last:
	     /opt/SUNWspro/lib	 for standard installs
	     installpath/lib	for custom installs


     -r8const
	  Promote single-precision constants to	REAL*8 constants.

	  All single precision literal constants are promoted to
	  REAL*8. Double-precision constants (REAL*8) are not
	  promoted.

	  This flag applies only to constants. Use -xtypemap to
	  promote both constants and variables.

     -reduction
	  Parallelize reduction	operations in loops

	  Analyze loops	for reduction in automatic paralleliza-
	  tion.	To enable parallelization of reduction loops,
	  specify both -reduction and -autopar.

	  A loop that transforms the elements of an array into a
	  single scalar	value is called	a reduction operation.
	  For example, summing the elements of a vector	is a typ-
	  ical reduction operation. Although these operations
	  violate the criteria for parallelizability, the com-
	  piler	can recognize them and parallelize them	as spe-
	  cial cases when -reduction is	specified. See the For-
	  tran Programming Guide chapter Parallelization for
	  information on reduction operations recognized by f95.
	  If you specify -reduction without -autopar, the com-
	  piler	issues a warning.


	  On a single-processor	system,	the generated code usu-
	  ally runs more slowly.

	  Example:  demo% f95 -autopar -reduction any.f

	  There	is always potential for	roundoff error with
	  reduction.

	  If you have a	reduction loop to be parallelized, then
	  use -reduction (with -autopar, of course). Do	not use
	  an explicit pragma, because the explicit pragma
	  prevents reduction for that loop, resulting in wrong
	  answers.

     -S	  Compile and only generate assembly code.

	  Compile the named programs and leave the assembly
	  language output on corresponding files suffixed .s (no
	  .o file is created).

     -s	  Strip	the symbol table from the executable file.

	  This option makes the	executable file	smaller	and more
	  difficult to reverse engineer. However, this option
	  prevents debugging.

     -sb  Produce table	information for	the Sun	WorkShop Source
	  Browser.

	  Note:	-sb cannot be used on source files the compiler
	  automatically	passes through the fpp or cpp preproces-
	  sors;	for example, source files with .F, .F90,or .F95
	  extensions, or used with the -F option.

     -sbfast
	  Similar to -sb, but faster.

	  Produce only table information for the Sun WorkShop
	  Source Browser. Do not assemble, link, or make object
	  files. (See also the discussion of -sb and its use with
	  source code preprocessors.)

     -silent
	  Supress compiler messages.

	  Normally, f95	does not issue messages, other than error
	  diagnostics, during compilation. This	option is pro-
	  vided	only for compatibility with the	f77 compiler com-
	  mand line.

     -stackvar
	  Force	all local variables to be allocated on the stack.

	  Allocates all	the local variables and	arrays in
	  routinesonto the memory stack	unless otherwise speci-
	  fied.	This option makes these	variables automatic
	  rather than static and provides more freedom to the
	  optimizer when parallelizing loops with calls	to sub-
	  programs.

	  Use of -stackvar is recommended with any of the paral-
	  lelization options.

	  Variables and	arrays are local, unless they are:

	  o    Arguments in a SUBROUTINE or FUNCTION statement
	       (already	on stack)

	  o    Global items in a COMMON	or SAVE, or STATIC
	       statement


	  o    Initialized items in a type statement or	a DATA
	       statement, such as:
		   REAL	X/8.0/ or DATA X/8.0/

	  Putting large	arrays onto the	stack with -stackvar can
	  overflow the stack causing segmentation faults.
	  Increasing the stack size may	be required.

	  The initial thread executing the program has a main
	  stack, while each helper thread of a multithreaded pro-
	  gram has its own thread stack.

	  The default stack size is about 8 Megabytes for the
	  main stack and 1 Megabyte (2 Megabytes on SPARC V9
	  platforms) for each thread stack. The	limit command
	  (with	no parameters) shows the current main stack size.

	  You can set the main stack size to 64	Megabytes, for
	  example, with	the
	     % limit stacksize 65536
	  command. See the Fortran User's Guide.

     -stop_status={yes|no}
	  Permit STOP statement	to return an integer status
	  value.

	  The optional argument	is either yes or no.  The default
	  is yes.

	  With -stop_status=yes	a STOP statement may contain an
	  integer constant that	will be	passed to the environment
	  as the program terminates.  This value will be avail-
	  able as $status for the C shell or $?	for the	Bourne
	  and Korn shells.

	  The value on the STOP	statement can be any positive
	  integer.  The	value returned to the shell will be
	  modulo 256 (in the range 0 to	255).

     -temp=dir
	  Define directory for temporary files.

	  Set the directory for	temporary files	used by	f95 to be
	  dir instead of the /tmp directory.

     -time
	  Show execution time for each compilation phase.

     -U	  Recognize upper and lower case in source files.

	  Do not treat uppercase letters as equivalent to lower-
	  case.	The default is to treat	uppercase as lowercase
	  except within	character-string constants.

	  With this option, the	compiler treats	Delta, DELTA, and
	  delta	as different symbols.

	  Portability and mixing Fortran with other languages may
	  require use of -U.

	  Calls	to intrinsic functions,	Fortran	library	func-
	  tions, and routines explicitly declared EXTERNAL are
	  not affected by this option.

     -u	  Imply	IMPLICIT NONE

	  Equivalent to	specifying IMPLICIT NONE in each compila-
	  tion unit. This has the affect of making the default
	  type of variables undeclared rather than using standard
	  Fortran implicit typing. This	option does not	override
	  any existing IMPLICIT	statements or explicit type
	  statements.

     -unroll=n
	  Enable unrolling of DO loops n times where possible.

	  n is a positive integer.

	  n = 1, inhibits all loop unrolling

	  n > 1, this option suggests to the optimizer that it
	  unroll loops n times.

	  If any loops are actually unrolled, then the executable
	  file is larger.

     -V	  Show name and	version	of each	compilation phase.

     -v	  Verbose mode - show compilation details

	  Like -V but also show	detail of options and environment
	  variables used by the	driver.

     -vpara
	  Show verbose parallelization messages

	  Parallelization options require a Sun	WorkShop HPC
	  license.

	  As the compiler detects each explicitly parallelized
	  loop that has	dependencies, it issues	a warning message
	  but the loop is parallelized.

	  Use with -explictpar and a C$MIC DOALL parallel pragma.

	  Example:  demo% f95 -explicitpar -vpara any.f

     -w[0|1|2|3|4]
	  Show or suppress warning messages.

	  -w suppresses	warning	messages from the compiler.
	  -w0 shows just error messages.
	  -w1 shows errors and warnings. (This is the default.)
	  -w2 shows errors, warnings, and cautions.
	  -w3 shows errors, warnings, cautions,	and notes.
	  -w4 shows errors, warnings, cautions,	notes, and com-
	  ments.

	  If you specify two options, and the second one over-
	  rides	all or part of the first one, the compiler issues
	  a warning.

     -xa  Synonym for -a.

     -xarch=isa
	  Specifies the	target architecture instruction	set
	  (ISA).

	  This option limits the code generated	by the compiler
	  to the instructions of the specified instruction set
	  architecture by allowing only	the specified set of
	  instructions.	This option does not guarantee use of any
	  target-specific instructions.

	  Values (SPARC	platforms):

	  Value	    Meaning

	  generic   Compile for	good performance on most 32-bit
		    architectures.

		    This is the	default. This option uses the
		    best instruction set for good performance on
		    most 32-bit	processors without major perfor-
		    mance degradation on any of	them. With each
		    new	release, the definition	of "best"
		    instruction	set may	be adjusted, if	appropri-
		    ate.

	  generic64 Compile for	good performance on most 64-bit
		    architectures.

		    This option	uses the best instruction set for
		    good performance on	most 64-bit processors
		    without major performance degradation on any
		    of them. With each new release, the	defini-
		    tion of "best" instruction set may be
		    adjusted, if appropriate.

	  native    Compile for	good performance on this system
		    (assuming a	32-bit architecture).

		    This is the	default	for the	-fast option. The
		    compiler chooses the appropriate setting for
		    the	current	32-bit system processor	it is
		    running on.

	  native64  Compile for	good performance on this system
		    (assuming a	64-bit architecture).

		    The	compiler chooses the appropriate setting
		    for	the current 64-bit system processor it is
		    running on.

	  v7	    Compile for	the SPARC-V7 ISA.

		    Enables the	compiler to generate code for
		    good performance on	the V7 ISA. This is
		    equivalent to using	the best instruction set
		    for	good performance on the	V8 ISA,	but with-
		    out	integer	mul and	div instructions, and the
		    fsmuld instruction.

		    Examples: SPARCstation 1, SPARCstation 2

	  v8a	    Compile for	the V8a	version	of the SPARC-V8
		    ISA.

		    By definition, V8a means the V8 ISA, but
		    without the	fsmuld instruction.  This option
		    enables the	compiler to generate code for
		    good performance on	the V8a	ISA.

		    Example: Any system	based on the microSPARC	I
		    chip architecture

	  v8	    Compile for	the SPARC-V8 ISA.

		    Enables the	compiler to generate code for
		    good performance on	the V8 architecture.

		    Example: SPARCstation 10

	  v8plus    Compile for	the V8plus version of the SPARC-
		    V9 ISA.

		    By definition, V8plus means	the V9 ISA, but
		    limited to the 32-bit subset defined by the
		    V8plus ISA specification, without the Visual
		    Instruction	Set (VIS), and without other
		    implementation- specific ISA extensions.
		    This option	enables	the compiler to	generate
		    code for good performance on the V8plus ISA.
		    The	resulting object code is in SPARC-V8+
		    ELF32 format and only executes in a	Solaris
		    UltraSPARC environment -- it does not run on
		    a V7 or V8 processor.

		    Example: Any system	based on the UltraSPARC
		    chip architecture

	  v8plusa   Compile for	the V8plusa version of the
		    SPARC-V9 ISA.

		    By definition, V8plusa means the V8plus
		    architecture, plus the Visual Instruction Set
		    (VIS) version 1.0, and with	UltraSPARC exten-
		    sions.  This option	enables	the compiler to
		    generate code for good performance on the
		    UltraSPARC architecture, but limited to the
		    32-bit subset defined by the V8plus	specifi-
		    cation. The	resulting object code is in
		    SPARC-V8+ ELF32 format and only executes in	a
		    Solaris UltraSPARC environment -- it does not
		    run	on a V7	or V8 processor.

		    Example: Any system	based on the UltraSPARC
		    chip architecture

	  v8plusb   Compile for	the V8plusb version of the
		    SPARC-V8plus ISA with UltraSPARC-III exten-
		    sions.

		    Enables the	compiler to generate object code
		    for	the UltraSPARC architecture, plus the
		    Visual Instruction Set (VIS) version 2.0, and
		    with UltraSPARC-III	extensions. The	resulting
		    object code	is in SPARC-V8+	ELF32 format and
		    executes only in a Solaris UltraSPARC-III
		    environment. Compiling with	this option uses
		    the	best instruction set for good performance
		    on the UltraSPARC-III architecture.

	  v9	    Compile for	the SPARC-V9 ISA.

		    Enables the	compiler to generate code for
		    good performance on	the V9 SPARC architec-
		    ture.  The resulting .o object files are in
		    ELF64 format and can only be linked	with
		    other SPARC-V9 object files	in the same for-
		    mat. The resulting executable can only be run
		    on an UltraSPARC processor running a 64-bit
		    enabled Solaris operating environment with
		    the	64-bit kernel.

		    -xarch=v9 is only available	when compiling in
		    a 64-bit enabled Solaris environment.

	  v9a	    Compile for	the SPARC-V9 ISA with UltraSPARC
		    extensions.

		    Adds to the	SPARC-V9 ISA the Visual	Instruc-
		    tion Set (VIS) and extensions specific to
		    UltraSPARC processors, and enables the com-
		    piler to generate code for good performance
		    on the V9 SPARC architecture.  The resulting
		    .o object files are	in ELF64 format	and can
		    only be linked with	other SPARC-V9 object
		    files in the same format. The resulting exe-
		    cutable can	only be	run on an UltraSPARC pro-
		    cessor running a 64-bit enabled Solaris
		    operating environment with the 64-bit kernel.

		    -xarch=v9a is only available when compiling
		    in a 64-bit	enabled	Solaris	operating
		    environment.

	  v9b	    Compile for	the SPARC-V9 ISA with
		    UltraSPARC-III extensions.

		    Adds UltraSPARC-III	extensions and VIS ver-
		    sion 2.0 to	the V9a	version	of the SPARC-V9
		    ISA. Compiling with	this option uses the best
		    instruction	set for	good performance in a
		    Solaris UltraSPARC-III environment.	 The
		    resulting object code is in	SPARC-V9 ELF64
		    format and can only	be linked with other
		    SPARC-V9 object files in the same format. The
		    resulting executable can only be run on an
		    UltraSPARC-III processor running a 64-bit
		    enabled Solaris operating environment with
		    the	64-bit kernel.

		    -xarch=v9b is only available when compiling
		    in a 64-bit	enabled	Solaris	operating
		    environment.

	  Notes:

	  o SPARC instruction set architectures	V7, V8,	and V8a
	    are	all binary compatible.
	  o Object binary files	(.o) compiled with v8plus and
	    v8plusa can	be linked and can execute together, but
	    only on a SPARC V8plusa compatible platform.
	  o Object binary files	(.o) compiled with v8plus,
	    v8plusa, and v8plusb can be	linked and can execute
	    together, but only on a SPARC V8plusb compatible
	    platform.
	  o -xarch values v9, v9a, and v9b are only available on
	    UltraSPARC 64-bit Solaris environments.
	  o Object binary files	(.o) compiled with v9 and v9a can
	    be linked and can execute together,	but will run only
	    on a SPARC V9a compatible platform.
	  o Object binary files	(.o) compiled with v9, v9a, and
	    v9b	can be linked and can execute together,	but will
	    run	only on	a SPARC	V9b compatible platform.

	    For	any particular choice, the generated executable
	    may	run much more slowly on	earlier	architectures.
	    Also, although quad-precision (REAL*16 and long dou-
	    ble) floating-point	instructions are available in
	    many of these instruction set architectures, the com-
	    piler does not use these instructions in the code it
	    generates.

	  Defaults:
	    If -xarch=isa is not specified, -xarch=generic is
	    assumed.

	  Interactions:
	    Although this option can be	used alone, it is part of
	    the	expansion of the -xtarget option and may be used
	    to override	the -xarch value that is set by	a
	    specific -xtarget option. For example,
	    -xtarget=ultra2 expands to -xarch=v8 -xchip=ultra2
	    -xcache=15/32/1:512/64/1. In the following command
	    -xarch=v8plusb overrides the -xarch=v8 that	is set by
	    the	expansion of -xtarget=ultra2.

	    example% f95 -xtarget=ultra2 -xarch=v8plusb	...

	  Warnings:
	    If this option is used with	optimization, the
	    appropriate	choice can provide good	performance of
	    the	executable on the specified architecture. An
	    inappropriate choice, however, might result	in seri-
	    ous	degradation of performance or in in a binary pro-
	    gram that is not executable	on the intended	target
	    platform.

     -xautopar
	  Synonym for -autopar

     -xcache=c
	  Define cache for optimizer

	  Define cache properties for use by optimizer.

	  c must be one	of the following:
	     o generic
	     o native
	     o s1/l1/a1
	     o s1/l1/a1:s2/l2/a2
	     o s1/l1/a1:s2/l2/a2:s3/l3/a3
	  The si, li, and ai, are defined as follows:
	  si The size of the data cache	at level i, in kilobytes
	  li The line size of the data cache at	level i, in bytes
	  ai The associativity of the data cache at level i
	  This option specifies	the cache properties that the
	  optimizer can	use. It	does not guarantee that	any par-
	  ticular cache	property is used.
	  Although this	option can be used alone, it is	part of
	  the expansion	of the -xtarget	option;	its primary use
	  is to	override a value supplied by the -xtarget option.

	  The -xcache values are:
	  generic
		Define the cache properties for	good performance
		on most	SPARCs.	This is	the default.
	  native
		Define the cache properties for	good performance
		on this	host platform.
	  s1/l1/a1
		Define level 1 cache properties.
	  s1/l1/a1:s2/l2/a2
		Define levels 1	and 2 cache properties.
	  s1/l1/a1:s2/l2/a2:s3/l3/a3
		Define levels 1, 2, and	3 cache	properties.

     -xcg89
	  Synonym for -cg89.

     -xcg92
	  Synonym for -cg92.

     -xchip=c
	  Specify target processor for optimizer.

	  Specify the target processor for use by the optimizer.

	  c must be one	of the following, depending on platform.

	  On SPARC platforms:  generic,	generic64, native,
	  native64, old, super,	super2,	micro, micro2, hyper,
	  hyper2, powerup, ultra, ultra2, ultra2i, ultra3.

	  This option specifies	timing properties by specifying
	  the target processor.

	  Although this	option can be used alone, it is	part of
	  the expansion	of the -xtarget	option;	its primary use
	  is to	override a value supplied by the -xtarget option.

	  Some effects are:
	  o The	ordering of instructions, that is, scheduling
	  o The	way the	compiler uses branches
	  o The	instructions to	use in cases where semantically
	    equivalent alternatives are	available

	  The -xchip values on SPARC are:
	  generic Optimize for good performance	on most	32-bit
		  SPARC	platforms.
	  generic64
		  Optimize for good performance	on most	64-bit
		  SPARC	platforms.
	  native  Optimize for good performance	on this	32-bit
		  host platform.
	  native64
		  Optimize for good performance	on this	64-bit
		  host platform.
	  old	  Optimize for pre-SuperSPARC(TM) processors.
	  super	  Optimize for the SuperSPARC chip.
	  super2  Optimize for the SuperSPARC II(TM) chip.
	  micro	  Optimize for the MicroSPARC(TM) chip.
	  micro2  Optimize for the MicroSPARC II(TM) chip.
	  hyper	  Optimize for the HyperSPARC(TM) chip.
	  hyper2  Optimize for the HyperSPARC II(TM) chip.
	  powerup Optimize for the Weitek(R) PowerUp(TM) chip.
	  ultra	  Optimize for the UltraSPARC(TM) chip.
	  ultra2  Optimize for the UltraSPARC II(TM) chip.
	  ultra2i Optimize for the UltraSPARC IIi(TM) chip.
	  ultra3  Optimize for the UltraSPARC III(TM) chip.

	  For complete information, see	the Fortran User's Guide

     -xcode=v
	  Specify code address space

	  The following	values for -xcode are:

	  abs32	  Generate 32-bit absolute addresses.
		  Code + data +	bss size is limited to 2**32
		  bytes.  This is the default on 32-bit	architec-
		  tures:  arch=generic,v7,v8,v8a,v8plus,v8plusa

	  abs44	  Generate 44-bit absolute addresses.
		  Code + data +	bss size is limited to 2**44
		  bytes.  Available only on 64-bit architectures:
		  -xarch=v9,v9a

	  abs64	  Generate 64-bit absolute addresses.
		  Available only on 64-bit architectures:
		  -xarch=v9,v9a

	  pic13	  Generate position-independent	code (small
		  model).
		  Equivalent to	-pic.  Permits references to at
		  most 2**11 unique external symbols on	32-bit
		  architectures, 2**10 on 64-bit.

	  pic32	  Generate position-independent	code (large
		  model).
		  Equivalent to	-PIC.  Permits references to at
		  most 2**30 unique external symbols on	32-bit
		  architectures, 2**29 on 64-bit.

	  The default is -xcode=abs32 for SPARC	V8 and V7.  The
	  default is -xcode=abs64 for SPARC and	UltraSPARC V9
	  (with	-xarch=v9|v9a).

	  When building	shared dynamic libraries with -xarch=v9
	  or v9a in 64-bit Solaris environment,	the -xcode=pic13
	  or pic32 (or -pic or -PIC) option MUST be specified.


     -xcommonchk[={yes|no}]
	  Enable runtime checking of common block inconsisten-
	  cies.

	  This option is provided as a debugging aid for programs
	  using	task common and	parallelization	(-explicitpar or
	  -parallel). (See the task common pragma.)

	  By default, runtime checking for inconsistent	task com-
	  mon declarations is disabled.	Compiling with
	  -xcommonchk=yes will enable this runtime check when the
	  program is executed.	If a common block is declared in
	  one source module as a regular common	block, and some-
	  where	else appears in	a task common pragma, the program
	  will stop and	a message pointing to the first	such
	  inconsistency	issued.

	  Because the runtime check invoked by this option will
	  degrade program performance, it should only be used
	  during program development and debugging.

	  Specifying -xcommoncheck alone is equivalent to
	  -xcommoncheck=yes

     -xcrossfile[=n]
	  Enable optimization and inlining across source files
	  (SPARC Only).

	  If specified,	n may be 0, or 1.

	  Normally, the	scope of the compiler's	analysis is lim-
	  ited to each separate	file on	the command line. For
	  example, -O4's automatic inlining is limited to subpro-
	  grams	defined	and referenced within the same source
	  file.

	  With -xcrossfile, the	compiler analyzes all the files
	  named	on the command line as if they had been	con-
	  catenated into a single source file.

	  -xcrossfile is only effective	when used with -O4 or
	  -O5.

	  The files produced from this compilation are inter-
	  dependent (due to possible inlining) must be used as a
	  unit when linking into a program. If any one routine is
	  changed and the files	recompiled, they must all be
	  recompiled.

	  As a result, use of this option will affect how
	  makefiles are	constructed.

	  The default, if not specified	on the command line, is
	  -xcrossfile=0	and no cross file optimizations	are per-
	  formed. -xcrossfile is equivalent to -xcrossfile=1.

     -xdepend
	  Synonym for -depend

     -xexplicitpar
	  Synonym for -explicitpar

     -xF  Allow	function-level reordering by the Sun WorkShop
	  Analyzer

	  Allow	the reordering of functions (subprograms) in the
	  core image using the compiler, the Analyzer and the
	  linker. If you compile with the -xF option, then run
	  the Analyzer,	you can	generate a map file that optim-
	  izes the ordering of the functions in	memory depending
	  on how they are used together. A subsequent link to
	  build	the executable file can	be directed to use that
	  map by using the linker -Mmapfile option. It places
	  each function	from the executable file into a	separate
	  section.

	  Reordering the subprograms in	memory is useful only
	  when the application text page fault time is consuming
	  a large percentage of	the application	time. Otherwise,
	  reordering may not improve the overall performance of
	  the application. The Analyzer	is part	of the Sun
	  WorkShop. See	the Analyzing Program Performance With
	  Sun WorkShop manual for further information on the
	  Analyzer.

     -xhelp=h
	  Show options summary or README file.

	  h is either readme or	flags.

	  readme:  Show	the online README file.
	  flags:  Show the compiler flags (options).

	  -xhelp=flags is a synonym for	-help.

     -xia[=widestneed|strict]
	  Enable interval arithmetic extensions	and set	a suit-
	  able floating-point environment.

	  Interval arithmetic is an extension to the numerical
	  computation techniques in Fortran 95.	For further
	  information, see the Fortran 95 documentation.

	  -xia is a macro flag that expands as follows:

	  -xia and -xia=widestneed expand to:
	    -xinterval=widestneed -ftrap=%none -fns=no -fsimple=0

	  -xia=strict expands to:
	    -xinterval=strict -ftrap=%none -fns=no =fsimple=0

     -xildoff
	  Turn off Incremental Linker
	  This forces the use of the standard linker, ld.

	  This option is the default if	you do not use -g.  It is
	  also the default if you use -G or name any source file
	  on the command line.

	  Override this	default	by using -xildon.

     -xildon
	  Turn on Incremental Linker
	  Turn on the Incremental Linker and force the use of ild
	  in incremental mode.
	  This option is the default if	you use	-g, and	do not
	  use -G, and do not name any source file on the command
	  line.

	  Override this	default	by using -xildoff.

     -xinline=rl
	  Synonym for -inline=rl.

     -xinterval[=no|widestneed|strict]
	  Enable processing of interval	arithmetic extensions.

	  Interval arithmetic is an extension to the numerical
	  computation techniques in Fortran 95.	For further
	  information, see the Fortran 95 documentation.

	  This flag controls the expression evaluation syntax
	  permitted.

	  -xinterval specified without a value defaults	to
	  widestneed.

	  no
	    Interval arithmetic	is not enabled.

	  widestneed
	    Promotes all non-interval variables	and literals in
	    any	mixed-mode expression to the widest interval data
	    type in the	expression.

	  strict
	    Prohibits mixed-type or mixed-length interval expres-
	    sions. All interval	type and length	conversions must
	    be explicit.


     -xlibmil
	  Synonym for -libmil.

     -xlibmopt
	  Use library of optimized math	routines

	  Use a	library	of selected math routines optimized for
	  performance.	This option usually generates faster
	  code.	It may produce slightly	different results; if so,
	  they usually differ in the last bit.	The order on the
	  command line for this	library	option is not signifi-
	  cant.

     -xlicinfo
	  Show license server user IDs.


	  Return license information about the licensing system.
	  In particular, return	the name of the	license	server
	  and the IDs of users who have	obtained licenses.

	  Generally, with this option, no compilation is done,
	  and a	license	is not checked out. If a conflicting
	  option is used, then the latest one on the command line
	  takes	precedence, and	a warning is issued.

     -xlic_lib=sunperf
	  Link with the	Sun Performance	Library

	  Example:
	     f95 -o pgx	-fast -pgx.f -xlic_lib=sunperf

	  As with -l it	should appear after all	source and object
	  file names on	the command line. This option must be
	  used to link with the	Sun Performance	Library.

     -Xlist[z]
	  Produce listings and do global program checking.

	  Check	across routines	for consistency.  This option
	  helps	find a variety of bugs.	In general, -Xlist also
	  makes	a line-numbered	listing	of the source and a cross
	  reference table of the identifiers. The errors that are
	  found	do not prevent the program from	being compiled
	  and linked.

	  Output is to a file with a name like the first file
	  name but with	a .lst extension.

	  Example: Errors, listing, and	xref to	file1.lst

	     demo% f95 -Xlist file1.f file2.f

	  Use the -Xlist options to check for interprocedural
	  problems, but	only after all other compiler errors and
	  warnings have	been resolved.

	  Summary of -Xlist Suboptions

	  -Xlist	 Default: listings, errors, xref
	  -XlistE	 Errors	only (no xref or listings)
	  -Xlisterr	 Suppress all -Xlist error messages
	  -Xlisterr[n]	 Suppress -Xlist error message n.
	  -XlistI	 Check include files also
	  -XlistL	 Listings only (no xref)
	  -Xlistl[n]	 Page length is	n lines
	  -Xlistonm	 Output	to nm instead of to file.lst
	  -Xlistw[nnn]	 Set output line width to n; default is
			 79
	  -Xlistwar	 Suppress all -Xlist warning messages
	  -Xlistwar[n]	 Suppress -Xlist warning message n.
	  -XlistX	 Xref only (no listings)



     -xloopinfo
	  Synonym for -loopinfo


     -xmaxopt[=n]
	  Enable optimization pragma and set maximum optimization
	  level.

	  Limits the optimization level	specified by a C$PRAGMA
	  SUN OPT=m directive to n.  When a directive specifying
	  a level m greater than n on the -xmaxopt flag	appears,
	  the compiler will use	n.

	  The value 	corresponds to the values 1 through 5 of
	  the -O optimization level flag. The value of n must be
	  greater or equal to the value	of highest optimization
	  level	specified by other options. So,	for example:

		 f95 ... -O3 -xmaxopt=4

	  would	be appropriate.

	  The flag  -xmaxopt   by itself defaults to -xmaxopt=5


     -xmemalign[=<a> <b>]
	  Specify maximum assumed memory alignment and behavior
	  of misaligned	data accesses.

	  For memory accesses where the	alignment is determinable
	  at compile time, the compiler	will generate the
	  appropriate load/store instruction sequence for that
	  alignment of data.

	  For memory accesses where the	alignment cannot be
	  determined at	compile	time, the compiler must	assume an
	  alignment to generate	the needed load/store sequence.

	  The -xmemalign flag allows the user to specify the max-
	  imum memory alignment	of data	to be assumed by the com-
	  piler	in these indeterminable	situations. It also
	  specifies the	error behavior to be followed at run-time
	  when a misaligned memory access does take place.

	  VALUES:

	  If a value is	specified, it must consist of two parts:
	  a numerical alignment	value, <a>, and	an alphabetic
	  behavior flag, <b>.

	  Allowed values for alignment,	<a> are:

	  1	Assume at most 1 byte alignment.
	  2	Assume at most 2 byte alignment.
	  4	Assume at most 4 byte alignment.
	  8	Assume at most 8 byte alignment.
	  16	Assume at most 16 byte alignment.

	  Allowed values for behavior, <b> are:

	  i	Interpret access and continue execution.
	  s	Raise signal SIGBUS.
	  f	Raise signal SIGBUS for	alignments less	than or
		equal to 4, otherwise interpret	access and con-
		tinue execution.

	  DEFAULTS:

	  The first default, which applies when	no -xmemalign
	  flag appears,	is:

	     -xmemalign=4s for
	     -xarch=generic,v7,v8,v8a,v8plus,v8plusa
	     -xmemalign=8s for -xarch=v9,v9a for C and C++
	     -xmemalign=8f for -xarch=v9,v9a for Fortran

	  The second default, which applies when -xmemalign
	  appears but without a	value, is:

	     -xmemalign=1i for all platforms


     -xnolib
	  Synonym for -nolib.


     -xnolibmil
	  Synonym for -nolibmil.


     -xnolibmopt
	  Cancel -xlibmopt

	  Use with -fast to cancel linking with	the optimized
	  math library.


     -xO[n]
	  Synonym for -O[n].


     -xpad
	  Synonym for -pad

     -xparallel
	  Synonym for -parallel


     -xpg Synonym for -pg.


     -xpp=p
	  Select source	file preprocessor.

	  p is either fpp or cpp.  Selects the source file
	  preprocessor to be used with .F files. The default is
	  fpp, which is	appropriate for	Fortran. Previous ver-
	  sions	of the compiler	used cpp, the standard C language
	  preprocessor.	To select cpp, specify -xpp=cpp.


     -xprefetch[=val]
	  Enable prefetch instructions on processors that support
	  prefetch.

	  Enable the compiler to generate prefetch instructions
	  on those architectures that support prefetch,	such as
	  UltraSPARC II	(-xarch= v8plus, v9plusa v8plusb, v9,
	  v9a, v9b)


	  Accepted values for val are:


	  auto	   enable automatic generation of prefetch
		   instructions

	  no%auto  disable automatic generation

	  explicit enable explicit prefetch PRAGMA directives

	  no%explicit
		   disable explicit prefectch directives

	  yes	   equivalent to -xprefetch=auto,explicit

	  no	   equivalent to -xprefetch=no%auto,no%explicit

	  The first default, when -xprefetch is	not specified,
	  is:

	  -xprefetch=no

	  The default when just	-xprefetch is specified	is:
	  -xprefetch=yes

	  With -xprefetch=auto,	the compiler is	free to	insert
	  prefetch instructions	into the code it generates. This
	  may result in	a performance improvement on UltraSPARC
	  II processors.

	  With -xprefetch=explicit, the	compiler will recognize
	  the directives:
	     $PRAGMA SPARC_PREFETCH_READ_ONCE (address)
	     $PRAGMA SPARC_PREFETCH_READ_MANY (address)
	     $PRAGMA SPARC_PREFETCH_WRITE_ONCE (address)
	     $PRAGMA SPARC_PREFETCH_WRITE_MANY (address)

     -xprofile=p
	  Collect or optimize with runtime profiling data

	  Collect and save execution frequency data during execu-
	  tion;	then use the data in subsequent	runs to	improve
	  performance.

	  p must be collect[:nm], use[:nm], or tcov.


	  If compilation and linking are performed in separate
	  steps, the same -xprofile option must	appear on the
	  compile as well as the link step.

	  collect[:nm]
		   Collect and save execution frequency	data for
		   later use by	the optimizer with -xprofile=use.
		   The compiler	generates code to measure state-
		   ment	execution frequency.

		   The nm is the name of the program that is
		   being analyzed. This	name is	optional. If not
		   specified, a.out is assumed to be the name of
		   the executable.

		   At runtime a	program	compiled with -
		   xprofile=collect:nm will create the subdirec-
		   tory	nm.profile to hold the runtime feedback
		   information.	Data is	written	to the file feed-
		   back	in this	subdirectory. If you run the pro-
		   gram	several	times, the execution frequency
		   data	accumulates in the feedback file; that
		   is, output from prior runs is not lost.

	  use[:nm] Use execution frequency data	to optimize
		   strategically.


		   As with collect:nm, the nm is optional and may
		   be used to specify the name of the program.

		   The program is optimized by using the execu-
		   tion	frequency data previously generated and
		   saved in the	feedback files written by a pre-
		   vious execution of the program compiled with
		   -xprofile=collect.

		   The source files and	other compiler options
		   must	be exactly the same as used for	the com-
		   pilation that created the compiled program
		   that	generated the feedback file. If	compiled
		   with	-xprofile=collect:nm, the same program
		   name	nm must	appear in the optimizing compila-
		   tion: -xprofile=use:nm.

	  tcov	   Basic block coverage	analysis using "new"
		   style tcov(1).

		   Code	instrumentation	is similar to that of -a,
		   but .d files	are no longer generated	for each
		   source file.	Instead, a single file is gen-
		   erated, whose name is based on the name of the
		   final executable. For example, if stuff is the
		   executable file, then stuff.profile/tcovd is
		   the data file.

		   When	running	tcov you must pass it the -x
		   option to make it use the new style of data.
		   If not, tcov	uses the old .d	files, if any, by
		   default for data, and produces unexpected out-
		   put.

		   Unlike -a, the TCOVDIR environment variable
		   has no effect at compile-time.  However, its
		   value is used at program runtime to identify
		   where to create the profile subdirectory.


	  Warning:
	  The report produced by tcov can be unreliable	if there
	  is inlining of subprograms due to -O4	or -inline. Cov-
	  erage	of calls to routines that have been inlined is
	  not recorded.

     -xrecursive
	  Allow	routines without RECURSIVE attribute to	call
	  themselves recursively.

	  Normally, only subprograms defined with the RECURSIVE
	  attribute can	call themselves	recursively.

	  Compiling subprograms	with -xrecursive enables them to
	  call themselves recursively even if they are not
	  defined with the attribute RECURSIVE.

	  Compiling routines with -xrecursive may cause	perfor-
	  mance	degradations.  Also, this flag does not	cause
	  local	variables to be	allocated on the stack.	Consider
	  using	-stackvar with -xrecursive


     -xreduction
	  Synonym for -reduction


     -xregs=r
	  Specify register usage (SPARC	Only).

	  Specify usage	of registers in	generated code.

	  r is a comma-separated list of one or	more of	the fol-
	  lowing:  [no%]appl, [no%]float.

	  Example:  -xregs=appl,no%float


	  The -xregs values are	for specific -xarch values):

	  appl	   Allow using registers g2, g3, and g4.  (v8,
		   v8a)
		   Allow using registers g2, g3, and g4.
		   (v8plus, v8plusa)
		   Allow using registers g2, g3.  (v9, v9a)

	  no%appl  Do not use appl registers.

	  float	   Allow using floating-point registers	as speci-
		   fied	in the SPARC ABI.

	  no%float Do not use floating-point registers.

	  The default is:  -xregs=appl,float.


     -xs Allow debugging by dbx	without	.o files.

	 With -xs, if you move executables to another directory,
	 then you can use dbx and ignore the object (.o) files.
	 Use this option in case you cannot keep the .o	files
	 around.

	 This option reverts to	implementing symbol tables as
	 implemented in	release	1.4 and	earlier. For this older
	 way, if you move the executables, you must also move the
	 source	files, but you can ignore the object files. Also,
	 the loader links more slowly, and dbx initializes more
	 slowly. For comparison, with the newer	way, which is now
	 the default, the loader links faster, and dbx initial-
	 izes faster. If you move the executables, you must move
	 both the source files and the object (	.o ) files, or
	 set the path with the dbx pathmap or use command.

	 This option passes the	-s option to the assembler.


     -xsafe=mem
	 Assume	no memory-based	traps

	 Allow the compiler to assume no memory-based traps occur
	 This option grants permission to use the speculative
	 load instruction on V9	machines. It is	only effective
	 when used with	-O5 optimization, and
	 -xarch=v8plus|v8plusa|v9|v9a is specified.


     -xsb
	 Synonym for -sb.


     -xsbfast
	 Synonym for -sbfast.


     -xspace
	 Do not	increase code size

	 Do no optimizations that increase the code size.
	 Example: Do not unroll	loops.


     -xtarget=t
	 Specify system	for optimization

	 Specify the target system for the instruction set and
	 optimization.

	 t must	be one of: native, native64, generic, generic64,
	 system-name.

	 The -xtarget option permits a quick and easy specifica-
	 tion of the -xarch, -xchip, and -xcache combinations
	 that occur on real systems. The only meaning of -xtarget
	 is in its expansion.

	 The -xtarget values are:

	 native:  Get the best performance on the host system
	 (32-bit architecture):
	 -xarch=native -xchip=native -xcache=native

	 native64:  Get	the best performance on	the host system
	 (64-bit architecture):
	 -xarch=native64 -xchip=native64 -xcache=native

	 generic:  Get the best	performance for	most 32-bit plat-
	 forms This is the default and is equivalent to:
	 -xarch=generic	-xchip=generic -xcache=generic

	 generic64:  Get the best performance for most 64-bit
	 platforms This	is equivalent to:
	 -xarch=generic64 -xchip=generic64 -xcache=generic

	 system-name:  Get the best performance	for the	specified
	 system.

	 Valid system names on SPARC are: sun4/15, sun4/20,
	 sun4/25, sun4/30, sun4/40, sun4/50, sun4/60, sun4/65,
	 sun4/75, sun4/110, sun4/150, sun4/260,	sun4/280,
	 sun4/330, sun4/370, sun4/390, sun4/470, sun4/490,
	 sun4/630, sun4/670, sun4/690, sselc, ssipc, ssipx, sslc,
	 sslt, sslx, sslx2, ssslc, ss1,	ss1plus, ss2, ss2p, ss4,
	 ss5, ssvyger, ss10, ss10/hs11,	ss10/hs12, ss10/hs14,
	 ss10/20, ss10/hs21, ss10/hs22,	ss10/30, ss10/40,
	 ss10/41, ss10/50, ss10/51, ss10/61, ss10/71, ss10/402,
	 ss10/412, ss10/512, ss10/514, ss10/612, ss10/712,
	 ss20/hs11, ss20/hs12, ss20/hs14, ss20/hs21, ss20/hs22,
	 ss20/51, ss20/61, ss20/71, ss20/502, ss20/512,	ss20/514,
	 ss20/612, ss20/712, ss600/41, ss600/51, ss600/61,
	 ss600/120, ss600/140, ss600/412, ss600/512, ss600/514,
	 ss600/612, ss1000, sc2000, cs6400, solb5, solb6, ultra,
	 ultra2, ultra2i, ultra2, ultra1/140, ultra1/170,
	 ultra1/200, ultra2/1170, ultra2/1200, ultra2/1300,
	 ultra2/2170, ultra2/2200, ultra2/2300,	entr2,
	 entr2/1170, entr2/2170, entr2/1200, entr2/2200, entr150,
	 entr3000, entr4000, entr5000, entr6000.

	 Compiling for a 64-bit	Solaris	environment on SPARC or
	 UltraSPARC V9 is indicated by the -xarch=v9 or
	 -xarch=v9a flag. Setting -xtarget=ultra or ultra2 is not
	 necessary or sufficient.  If -xtarget is specified, the
	 -xarch=v9 or v9a option must appear AFTER the -xtarget,
	 as in:
		    -xtarget=ultra2 ...	-xarch=v9 otherwise the
	 -xtarget setting will revert -xarch to	v8.

	 See the section on -xtarget=t in the Fortran User's
	 Guide for the -xtarget	expansions that	show the mnemonic
	 encodings of the actual system	names and numbers.

	 This option is	a macro. Each specific value for -xtarget
	 expands into a	specific set of	values for the -xarch,
	 -xchip, and -xcache options. For example:
	 -xtarget=sun4/15 is equivalent	to:
	 -xarch=v8a -xchip=micro -xcache=2/16/1

	 fpversion(1) can be used to see the -xtarget or
	 -xarch, -xchip, and -xcache options equivalent	to
	 -xtarget=native on any	system.


     -xtime
	 Synonym for -time.


     -xtypemap=spec
	 Specify default data mappings.

	 This option provides a	flexible way to	specify	the byte
	 sizes for default data	types. Compare with -dbl and -r8.

	 The syntax of the string spec is:

	 type:bits,type:bits,...

	 The allowable data types are REAL, DOUBLE, INTEGER.  The
	 data sizes accepted are 32, 64,and 128.

	 This option applies to	all variables declared without
	 explicit byte sizes, as in REAL XYZ.

	 The allowable combinations are:

	   real:32 or real:64,
	   double:64 or	double:128,
	   integer:32 or integer:64.

	 A useful mapping is:

	    -xtypemap=real:64,double:64:integer:64

	 which maps REAL and DOUBLE to 8 bytes,	but does not pro-
	 mote DOUBLE PRECISION to QUAD PRECISION.

	 Note also that	INTEGER	and LOGICAL are	treated	the same,
	 and COMPLEX is	mapped as two REAL data	elements. Also,
	 DOUBLE	COMPLEX	will be	treated	the way	DOUBLE is mapped.

	 For more information, see the Fortran User's Guide

     -xunroll=n
	 Synonym for -unroll=n


     -xvector[={yes|no}]
	 Enable	automatic generation of	calls to the vector
	 library functions.

	 -xvector=yes permits the compiler to transform	math
	 library calls within DO loops into single calls to the
	 equivalent vector math	routines when such transforma-
	 tions are possible. This could	result in a performance
	 improvement for loops with large loop counts.

	 The default if	not specified is -xvector=no.  Specifying
	 -xvector is equivalent	to -xvector=yes.

	 This option also triggers -depend if -depend is not
	 already specified prior to -xvector on	the command line.
	 However, -nodepend following -xvector on the command
	 line will cancel the effect of	-xvector.

	 The compiler automatically informs the	linker to include
	 the libmvec and libc libraries	in the load step. If com-
	 piling	and linking are	done in	separate commands, -xvec-
	 tor must also appear on the linking f95 command.


     -Zlp
	 Compile for loop profiling by looptool.

	 Prepare object	files for the loop profiler looptool,
	 part of the Sun WorkShop.  This option	requires a
	 WorkShop license.

	 If you	compile	and link in separate steps, and	you com-
	 pile with -Zlp, then be sure to link with -Zlp.

	 If you	compile	one subprogram with -Zlp, you need not
	 compile all subprograms of that program with -Zlp.  How-
	 ever, you get loop information	only for the files com-
	 piled with -Zlp, and no indication that the program
	 includes other	files.


     -ztext
	 Make no library with relocations

	 Do not	make the library if relocations	remain.	 The gen-
	 eral purpose of -ztext	is to ask if the generated
	 library is pure text; instructions are	all position-
	 independent code. Therefore, it is generally used with
	 both -G and -pic.

	 With -ztext, if ld finds an incomplete	relocation in the
	 text segment, then it does not	build the library. If it
	 finds one in the data segment,	then it	generally builds
	 the library anyway; the data segment is writable.

	 Without -ztext, ld builds the library,	relocations or
	 not.

	 A typical use is to make a library from both source
	 files and object files, where you do not know if the
	 object	files were made	with -pic.


     Other arguments are taken to be either linker option argu-
     ments, or names of	f95-compatible object programs,	typically
     produced by an earlier run, or libraries of routines that
     are f95-compatible.  These	programs, together with	the
     results of	any compilations specified, are	linked in the
     order given to produce an executable program in the file
     specified by the -o option, or in a file named a.out if the
     -o	option is not specified.

DIRECTIVES
     General Directives:  f95 allows general compiler directive
     lines starting with C$PRAGMA, !$PRAGMA, or	*$PRAGMA, and any
     uppercase or lowercase is allowed.	 Examples:

       C$PRAGMA	C( suba, subz)
       C$PRAGMA	SUN UNROLL 2
       C$PRAGMA	WEAK FUNK
       C$PRAGMA	SUN OPT=4
       C$PRAGMA	PIPELOOP=5
       C$PRAGMA	SPARC_PREFETCH_READ_ONCE (name)
       C$PRAGMA	SPARC_PREFETCH_READ_MANY (name)
       C$PRAGMA	SPARC_PREFETCH_WRITE_ONCE (name)
       C$PRAGMA	SPARC_PREFETCH_WRITE_MANY (name)

     Parallel Directives:  f95 recognizes Sun-style parallel com-
     piler directive lines starting with C$PAR,	!$PAR, or *$PAR,
     and any uppercase or lowercase is allowed.	 Examples:

       C$PAR DOALL
       C$PAR DOSERIAL
       C$PAR DOSERIAL*
       C$PAR TASK COMMON


     Cray-style	parallelization	directives are also recognized.
     The directive sentinel is CMIC$ or	!MIC$

     See the Fortran User's Guide for details and variations.

ENVIRONMENT
     The paths shown below assume a standard installation of the
     Sun WorkShop Compilers to /opt/SUNWspro/.	Contact	your sys-
     tem administrator if your compilers were custom installed to
     some other	directory path.

  PATH
     To	use f95, add the following to the start	of the search
     path:

     /opt/SUNWspro/bin/


  MANPATH
     To	access the f95 man pages, add the following to the MAN-
     PATH environment variable:

     /opt/SUNWspro/man/


  LD_LIBRARY_PATH
     Generally,	you need not set up LD_LIBRARY_PATH.  If you do
     need to do	so, then maybe there is	some discrepancy in the
     installation, or some executable has been built incorrectly.

     Set the LD_LIBRARY_PATH, environment variable to:

     /opt/SUNWspro/lib/


  LD_LIBRARY_PATH_64
     On	Solaris	7, this	environment variable is	similar	to
     LD_LIBRARY_PATH but overrides it when searching for 64-bit
     dependencies.

     When running Solaris 7 on a SPARC processor and linking in
     32-bit mode, LD_LIBRARY_PATH_64 is	ignored.  If only
     LD_LIBRARY_PATH is	defined, it us used for	both 32-bit and
     64-bit linking.  If both LD_LIBRARY_PATH and
     LD_LIBRARY_PATH_64	are defined, the 32-bit	linking	will be
     done using	LD_LIBRARY_PATH	and the	64-bit linking using
     LD_LIBRARY_PATH_64.

     See Linker	and Libraries Guide for	more information on these
     environment variables.


  LD_RUN_PATH
     If	you use	LD_RUN_PATH, note that for f95,	LD_RUN_PATH is
     not identical with	-R.  (For ld.so, they are identical.)
     See -R, in	the Fortran User's Guide, for details.

FILES
     Selected major files used by the compiler
     a.out		  Executable output file
     file.a		  Library of object files
     file.d		  Test coverage	input file for tcov(1)
     file.f		  FORTRAN source file
     file.f95		  Fortran 95 source file
     file.F		  FORTRAN source file for fpp(1)
     file.F90		  Fortran 95 source file for fpp(1)
     file.for		  FORTRAN source file
     file.il		  In-line expansion file
     file.o		  Object file
     file.r		  Ratfor source	file
     file.s		  Assembler source file
     file.S		  Assembler source for cpp(1)
     file.tcov		  Output from tcov(1)

     /usr/lib/libc.a	  Standard C library, see intro(3)
     /usr/lib/libp/libc.a Profiling library, see intro(3)
     /tmp/*		  Compiler temporary files
     mon.out		  File produced	for analysis by	prof(1)
     gmon.out		  File produced	for analysis by	gprof(1)


     For the remaining files, if no absolute path is shown then
     they are in the following directory:

     /opt/SUNWspro//

     where  varies with each release of Sun WorkShop.
     (See your systems administrator for details.)

     bin/fpp
	  Fortran preprocessor
     bin/cpp
	  C preprocessor
     include/f95
	  Path searched	for f95	INCLUDE	statement
     include/f95/f95_floatingpoint.h
	  f95 IEEE arithmetic type definitions

     The following libraries exist in both .so and .a versions:
     lib/libfsu
	  f95 support intrinsics
     lib/libfui
	  f95 -	UNIX interface
     lib/libfio
	  Fortran 95 I/O
     lib/lib*fai
	  Fortran 95 array intrinsics libraries
     lib/libifai
	  Fortran 95 interval array intrinsics library
     lib/libf77compat
	  f77 I/O compatibility	library

     /usr/lib/libm.a
	  Math lib
     /usr/lib/libp/libm.a
	  Math profile lib
     lib/libsunmath.a
	  Sun value-added math lib
     lib/libsunimath.a
	  Sun value-added interval math	lib
     lib/libp/libsunmath.a
	  Sun value-added math profile lib
     lib/libp/libsunimath.a
	  Sun value-added interval math	profile	lib

READMEs
     A number of README	files provide valuable last-minute infor-
     mation on the compilers and libraries, including white
     papers. Of	particular interest are:

	  o   fortran_95
	  o   math_libraries
	  o   64bit_Compilers

     The path to the READMEs directory is:
       /SUNWspro/READMEs/
     where  is usually /opt in a standard	install.

SEE ALSO
     asa(1),  cc(1),  dbx(1),  fpp(1),	fpr(1),	 fsplit(1),
     gprof(1),	ild(1),	 ld(1),	 perror(3f),  prof(1),	tcov(1)

     Fortran User's Guide
     Fortran Programming Guide
     Numerical Computation Guide
     Sun Performance Library User's Guide
     Analyzing Program Performance with	Sun WorkShop
     Fortran Library Reference
     Linker and	Libraries Guide	(ld)
     Debugging a Program With dbx

     Sun Performance Library:  See the performance_library README
     file.  This library is part of the	Sun Performance	WorkShop
     and contains subroutines and functions for	operations in
     computational linear algebra and Fourier transforms.

DIAGNOSTICS
     The diagnostics produced by f95 itself are	intended to be
     self-explanatory. Occasional messages may be produced by the
     linker.  When compiling within the	Sun WorkShop "Building"
     window, the compiler's diagnostic messages	are hyper-linked
     to	online help. Clicking on the message information icon
     launches a	browser	with additional	information about the
     diagnostic.

	     Last change: 00/04/03  Sun	WorkShop 6	       60


U-System Information
UA Homepage      UITS Homepage


The Center for Computing & Information Technology (UITS)
UITS Knowledgebase
Telephone: 621-HELP
Email: Consult@listserv.arizona.edu

Website maintained by:
UITS Computing Services
*29 on 64-bit.