The /assume
qualifier tells KAP to make certain
global assumptions about the program being processed. The
/assume
qualifier settings and the corresponding KAP
assertions are as follows:
a
- Different subroutine or function
parameters can refer to the same object. C*$* assert
argument aliasing
b
- Array subscripts can go outside the
declared bounds. C*$* assert bounds violations
c
- Constants used in subroutine or function
calls will be placed in temporary variables. C*$* assert
temporaries
for constant arguments.
e
- EQUIVALENCE statements can cause
different names to refer to the same memory location. C*$*
assert equivalence hazard
l
- Unless KAP can prove they are unneeded,
KAP must insert code to assign to variables in transformed loops
the values they would have had after the original serial loop.
C*$* assert last value needed
By default, KAP assumes that a program conforms to the Fortran 77
standard, that is, /assume=el
. The default includes
/assume=c
to simplify some analysis and inlining.
To disable all the above assumptions, enter /noassume
on the command line.