Intel® Fortran Compiler 16.0 User and Reference Guide
General Compiler Directive: Prevents a loop from fusing with adjacent loops.
!DIR$ NOFUSION
The NOFUSION directive lets you fine tune your program on a loop-by-loop basis.
This directive should be placed immediately before the DO statement of the loop that should not be fused.
Consider the following example that demonstrates use of the NOFUSION directive:
subroutine sub (b,a,n) real a(n), b(n) do i=1,n a(i) = a(i) + b(i) enddo !DIR$ NOFUSION do i=1,n a(i) = a(i) + 1 enddo end
The following shows the same example, but it uses Standard Fortran array assignments, which allow implicit arrays:
subroutine sub (b,a,n) real a(n), b(n) a = a + b !DIR$ NOFUSION a = a + 1 end