When certain loop directives precede an array assignment statement, they affect the implicit loops that are generated by the compiler.
The following loop directives can affect array assignment statements:
Usually only one of the general directives can precede the array assignment statement (one-dimensional-array = expression) to affect it. The BLOCK_LOOP and NOBLOCK_LOOP directives may precede array assignment statements with any rank variable on the left-hand-side of the assignment.
Other rules may apply to the general directives. For more information, see the description of each directive.
Consider the following:
REAL A(10), B(10)
...
!DIR$ IVDEP
A = B + 3This has the same effect as writing the following explicit loop:
!DIR$ IVDEP
DO I = 1, 10
A (I) = B (I) + 3
END DO