next up previous
Next: AssertInduction Up: Polaris Assertions and Previous: AssertSerial

AssertSafeCondition

The AssertSafeCondition assertion is attached to a loop for which it could be determined that the analysis done was ``safe'' if only the given condition were true. If the result of the analysis was that the loop would be parallel, if only the condition were true, then the condition can be tested at run-time, and we can choose between the parallel and serial forms of the loop.

The assertion gives a single logical expression which could be inserted directly into an IF statement in the output of Polaris. It is attached before the DO statement in a program.

The CSRD directive form of the AssertSafeCondition assertion is:

CSRD$ SAFE_CONDITION (N .GT. M) .AND. (M .GT. 0)

An example of its usage is as follows:

CSRD$ SAFE_CONDITION (N .GT. M) .AND. (M .GT. 0)
       do i = 1, m
          . . .



Jay Hoeflinger
Mon Apr 21 11:52:18 CDT 1997