I define this kernel subroutine inside a module
attributes(global) SUBROUTINE txt(N, N_R, irow_R, isfu, ryrgate, ca_ds, ca_jsr, compKm, indexKm, compKp, indexKp, Pdtmin, compPdt, indexPdt)
IMPLICIT NONE
INTEGER, VALUE :: N, maxnklm, maxnklp, N_R, irow_R
INTEGER, DIMENSION(N) :: isfu
REAL(KIND=REAL8), DIMENSION(N) :: ryrgate
REAL(KIND=real8), DIMENSION(N) :: ca_ds, ca_jsr
REAL(KIND=real8) ::compKm, compKp
INTEGER :: indexKm, indexKp
DIMENSION compKm(irow_R,N), indexKm(irow_R,N)
DIMENSION compKp(irow_R,N), indexKp(irow_R,N)
REAL(KIND=real8) :: Pdtmin
REAL(KIND=real8), DIMENSION(N, N) :: compPdt
INTEGER, DIMENSION(N, N) :: indexPdt
REAL(KIND=real8), DIMENSION(N):: bigC, chiC, chiO
REAL(KIND=real8) :: aK0, aK1
INTEGER :: i, j
END SUBROUTINE txt
When I compile (include linking to the main subprogram also), I get the internal compiler error.
abcfunc:
67, Memory set idiom, loop replaced by call to __c_mset8
169, Invariant communication calls hoisted out of loop
170, Invariant communication calls hoisted out of loop
PGF90-F-0000-Internal compiler error. unsupported operation 311 (abf_utility.f95: 222)
PGF90/x86-64 Linux 10.1-0: compilation aborted
make: *** [abc_utility.mod] Error 2
with 222 is the line number of
END SUBROUTINE txt