This directive instructs the compiler not to inline the specified routine.
!DIR$ NOINLINE
To use this directive, compiler optimization level should be in -O0 to
-O3. The NOINLINE directive overrides the compiler options
-finline-functions and -fno-inline-functions.
Example
!DIR$ NOINLINE
SUBROUTINE func_noinline
INTEGER :: i
do i = 0, 5
WRITE(*, *) "Hello World"
end do
END SUBROUTINE func_noinline
PROGRAM test_inline
IMPLICIT NONE
call func_noinline
END PROGRAM test_inline