6.2.3 C*$* assert [no]equivalence hazard

The C*$* assert noequivalence hazard assertion tells KAP that equivalenced variables will not be used to refer to the same memory location inside one DO loop nest. Normally, equivalence statements allow different variable names to refer to the same storage location. The /assume=e command qualifier acts like a global C*$* assert equivalence hazard assertion. The equivalence hazard assertion is active until reset or until the end of the program.

In the following example, if arrays E and F are equivalenced, but you know that the overlapping sections will not be referenced in this loop, using C*$* assert noequivalence hazard allows KAP to optimize the loop:

EQUIVALENCE ( E(1), F(101) )
   C*$* ASSERT NO EQUIVALENCE HAZARD
           DO 10 I = 1,N
            E(I+1) = B(I)
              C(I) = F(I)
  10  CONTINUE


Previous Page | Next Page | Contents | Index |
Command-Line Qualifiers