OSDN Git Service

PR middle-end/51285
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gfortran.dg / vect / pr51285.f90
1 ! { dg-do compile }
2
3    SUBROUTINE smm_dnn_4_10_10_1_1_2_1(A,B,C)
4       REAL   :: C(4,10), B(10,10), A(4,10)
5       DO j=           1 ,          10 ,           2
6       DO i=           1 ,           4 ,           1
7       DO l=           1 ,          10 ,           1
8         C(i+0,j+0)=C(i+0,j+0)+A(i+0,l+0)*B(l+0,j+0)
9         C(i+0,j+1)=C(i+0,j+1)+A(i+0,l+0)*B(l+0,j+1)
10       ENDDO
11       ENDDO
12       ENDDO
13     END SUBROUTINE
14    SUBROUTINE smm_dnn_4_10_10_6_4_1_1(A,B,C)
15       REAL   :: C(4,10), B(10,10), A(4,10)
16       DO l=           1 ,          10 ,           1
17       DO j=           1 ,          10 ,           1
18         C(i+0,j+0)=C(i+0,j+0)+A(i+0,l+0)*B(l+0,j+0)
19       ENDDO
20       ENDDO
21     END SUBROUTINE
22  SUBROUTINE S(A,B,C)
23     INTEGER :: Nmin=2,Niter=100
24     REAL, DIMENSION(:,:), ALLOCATABLE   :: A,B,C
25     DO imin=1,Nmin
26      DO i=1,Niter
27        CALL smm_dnn_4_10_10_1_1_2_1(A,B,C)
28      ENDDO
29      DO i=1,Niter
30        CALL smm_dnn_4_10_10_6_4_1_1(A,B,C)
31      ENDDO
32      CALL foo()
33     ENDDO
34  END SUBROUTINE
35
36 ! { dg-final { cleanup-tree-dump "vect" } }