The AssertInstrument assertion, appearing before a DO statement, indicates that the DO loop should be instrumented. The instrumentation switches are used by Polaris to determine what type of instrumentation is to be actually done. The presence of the AssertInstrument assertions will be noticed with the appropriate setting of those switches.
The CSRD directive form of the AssertInstrument assertion is:
CSRD$ INSTRUMENT
An example of its usage is as follows:
CSRD$ PARALLEL (J) CSRD$ LOOPLABEL 'ADDUP_do#1' CSRD$ INSTRUMENT DO J = 1, N CSRD$ FIRSTVALUE q, z(1:m:1) CSRD$ PRIVATE a(1:m), b(1:m), x, y CSRD$ LASTVALUE b(1:m:1), a(1:m:1) . . . CSRD$ LOOPLABEL 'ADDUP_do#1#1' DO K = 1, M CSRD$ READ_ONLY_REFS ('ADDUP_do#1', a(k), b(k)) END DO