Disable or set interpretation of !DIR$ IVDEP directives
The IVDEP directive tells the compiler to ignore some or all loop-carried dependences on array references that it finds in a loop, allowing it to perform various loop optimizations such as microvectorization, distribution, software pipelining, among others, that would not be otherwise possible. It is employed in situations where the user knows either that the dependences do not matter or that they never occur in practice.
The interpretation of !DIR$ IVDEP directives depend upon the value of the -xivdep option. The following values for p are interpreted as follows:
|
These interpretations are provided for compatibility with other vendor's interpretations of the IVDEP directive.
The default when —xivdep is not specified, and when —xivdep is specified without an argument, are both —xivdep=loop, which implies that the !DIR$ IVDEP directives are enabled by default.
For more information, see IVDEP Directive for details.