[patch, fortran, RFC] First steps towards inlining matmul
Dominique d'Humières
dominiq@lps.ens.fr
Fri Apr 10 16:57:00 GMT 2015
> Le 10 avr. 2015 à 16:15, Dominique d'Humières <dominiq@lps.ens.fr> a écrit :
>
>
>> 4. is required, I need to look at some more corner cases where bugs may still be lurking.
>
Compiling the polyhedron test rnflow.f90 after the patch gives an ICE
f951: internal compiler error: gfc_array_dimen_size(): Bad dimension
Reduced test extracted from the subroutine evlrnf:
subroutine evlrnf (ptrs0t, nclsm, prnf0t)
real, dimension (1:nclsm,1:nclsm), intent (in) :: ptrs0t
integer, intent (in) :: nclsm ! nombre de classes
real, dimension (1:nclsm,1:nclsm), intent (out):: prnf0t
real, allocatable, dimension (:,:) :: utrsft ! probas up
real, allocatable, dimension (:) :: vwrkft
real, allocatable, dimension (:) :: vwrk2t
ncls = nclsm
allocate (utrsft (1:ncls,1:ncls))
allocate (vwrkft (1:ncls))
allocate (vwrk2t (1:ncls))
vwrk2t = matmul (utrsft, vwrkft) ! U Fk
deallocate (utrsft)
deallocate (vwrk2t)
deallocate (vwrkft)
end subroutine evlrnf
Dominique
More information about the Fortran
mailing list