4 Command Switches

This chapter describes the command-line switches of the basic KAP for DEC Fortran for Digital UNIX.

To specify a command switch, you can use the long name, short name, or any portion of that name (starting at the beginning) that uniquely identifies the switch. Additionally, these switches can be specified on the first line of the source file. (See the description of the C*$* switch line at the end of this chapter.)


Note
The short names for switches are provided for the convenience of interactive users. Since the short names may not be unique in future versions of KAP, the long names should be used when compatibility between versions is required.

Many KAP command switches can also be set with inline directives or assertions. See Chapter 5 for information about directives and Chapter 6 for information about assertions. Chapter 8 shows extensive examples of transformations controlled by these switches.

Table 4-1 lists the command switches. The first column lists the long name of each switch, and also shows the functional categories of switches as follows:

The next two columns list the short names and default value of each switch.

See Chapter 9, the - listoptions=k switch, for how to get the switch values active for a given KAP run.


Note
A hyphen (-) is required before each switch name, but the hyphen is not shown in the following table.

Table 4-1 Command-Line Switches

Long Name  Related Switch  Short Name  Default Value 
General Optimization       
[no]interchange  o,so  interchange  interchange 
[no]namepartitioning= (<integer>,<integer>)  so  [n]namepart= (<integer>,<integer>)  nonamepartitioning 
optimize=<integer>    o=<integer>  optimize=5 
roundoff=<integer>  o, so  r=<integer>  roundoff=3 
[no]routine= <routine_name>/<limited switches>  See text  [n]rt=<routine_name> /<limited switches>  noroutine 
scalaropt=<integer>  so=<integer>  scalaropt=3 
[no]skip  sk  [n]sk  noskip 
tune=<architecture>    tune=<architecture>  tune=host 
Parallel Processing Switches       
[no]concurrentize    [n]conc  noconcurrentize 
minconcurrent=<integer>    mc  minconcurrent=1000 
[no]parallelio    [n]pio  noparallelio 
Fortran Dialect       
assume=<list>    a=<list>  assume=cel 
noassume    na   
[no]case    [n]case  nocase 
[no]datasave  sv  [n]ds  datasave 
[no]dlines    [n]dl  nodlines 
[no]escape    noescape  escape 
integer=<integer>    int=<integer>  integer=4 
[no]intlog  sy  [n]intl  intlog 
logical=<integer>    log=<integer>  logical=4 
[no]natural    [n]nat  see Section 4.3.9 
[no]onetrip    [n]1  noonetrip 
real=<integer>    rl=<integer>  real=4 
[no]recursion    [n]rc  norecursion 
save=<list>  ds, rc  sv=<list>  save=manual_adjust 
scan=<integer>    scan=<integer>  scan=72 
syntax=<list>    sy=<list>  (off) 
[no]type    [n]ty  notype 
Directives       
directives=<list>    dr=<list>  directives=ak 
nodirectives=<list>    ndr   
[no]ignoreoptions    [n]ig  noignoreoptions 
Inlining and IPA       
inline[=<names>]  aggressive  inl[=<names>]  off 
noinline[=<names>]    ninl[=<names>]  off 
ipa[=<names>]    ipa[=<names>]  off 
noipa[=<names>]    nipa[=<names>]  off 
inline_and_copy=<names>    inlc=<names>  off 
inline_create=<file>  ipa  incr=<file>  off 
ipa_create=<file>    ipacr=<file>  off 
inline_depth=<integer>    ind=<integer>  inline_ depth=2 
ipa_ depth=<integer>    ipad=<integer>  ipa_depth=2 
inline_from_files=<file>,<file>  inl  inff=<file>,<file>  current source file 
ipa_ from_files=<file>,<file>  ipa  ipaff=<file>,<file>  current source file 
inline_from_libraries= <library>,<library>  inl  infl=<library>, <library>  off 
ipa_from_ libraries=<library>,<library>  ipa  ipafl=<library>, <library>  off 
inline_looplevel=<integer>    inll=<integer>  inll=2 
ipa_looplevel=<integer>    ipall=<integer>  ipall=2 
inline_ manual    inm  off 
ipa_ manual    ipam  off 
inline_ optimize=<integer>  see Section 4.4.11    inline_ optimize=0 
ipa_ optimize=<integer>      noipa_optimize=0 
Input- Output       
cmp=<file>    cmp=<file>  nocmp 
fortran=<file>    f=<file>  nof 
lines=<integer>0    ln=<integer>  lines=55 
list=<file>    [n]l   
[no]list    [n]l   
cmpoptions[=<list>]    cp[=<list>]  cmpoptions=n 
nocmpoptions    ncp   
Listing       
cmpoptions[=<list>]    cp[=<list>]  cmpoptions=n 
nocmpoptions    ncp   
lines=<integer>    ln=<integer>  lines=55 
listingwidth=<integer>  lo  lw=<integer>  listingwidth=132 
listoptions=<list>    lo=<list>  listoptions=0 
suppress=<list>    su=<list>  off 
Advanced Optimization       
aggressive=<list>  nat, inl  ag=<list>  noaggressive 
noaggressive    nag   
[no]arclimit=<integer>  so, r  [n]arclm=<integer>  arclimit=5000 
cacheline=<integer>[,<integer>]    chl=<integer> [,<integer>]  cacheline=32,32 
cache_prefetch_line_ count=<integer>    cplc=<integer>  cache_prefetch_line_ count=0 
cachesize=<integer>[,<integer>]    chs=<integer> [,<integer>]  cachesize=8,0 
dpregisters=<integer>    dpr=<integer>  dpregisters=32 
each_invariant_if_ growth=<integer>  so, r, miifg  eiifg=<integer>  eiifg=20 
fpregisters=<integer>    fpr=<integer>  fpr=32 
[no]fuse  so,o  fuse  nofuse 
fuselevel=<integer>  fuse  fuselevel=<integer>  fuselevel=0 
heaplimit=<integer>    heap=<integer>  heaplimit=116 
hoist_ loop_invariants=<integer>    hli  hli=1 
[no]interleave    intl  interleave 
library_calls=<name>  ro  lc=<name>  off 
limit=<integer>    lm=<integer>  lm=20000 
[no]machine=<list>  so, r  ma=<list>  ma=s 
max_invariant_if_ growth=<integer>  so, r, eiifg  miifg=<integer>  miifg=500 
setassociativity=<integer>  so, r  sasc=<integer>  sasc=1 
[no]srlcd  so  [n]srcld  nosrlcd 
unroll=<integer>  so, r  ur=<integer>  unroll=4 
unroll2=<integer>  so, r  ur2=<integer>  unroll2=160 
unroll3=<integer>  so, r  ur2:<integer>  unroll3=20 

The subheadings in the following sections list the long and short names for each switch, followed by its default in parentheses.

Unless otherwise noted, the code examples in this chapter were run with -optimize=5, -scalaropt=2, -roundoff=2 , and -unroll=1 .


Previous Page | Next Page | Contents | Index |
Command Line Switches