diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/loop_interchange_1.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/loop_interchange_1.f90 | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/loop_interchange_1.f90 b/gcc/testsuite/gfortran.dg/loop_interchange_1.f90 new file mode 100644 index 00000000000..a061e28b35a --- /dev/null +++ b/gcc/testsuite/gfortran.dg/loop_interchange_1.f90 @@ -0,0 +1,22 @@ +! { dg-do compile } +! { dg-additional-options "-O -Wfrontend-loop-interchange" } +PROGRAM TEST_DO_SPEED + IMPLICIT NONE + + REAL, ALLOCATABLE :: A(:,:,:), B(:,:,:), C(:,:,:) + REAL :: TIC + INTEGER :: T0, T1, T2 + INTEGER :: I, J, K + INTEGER, PARAMETER :: L = 512, M = 512, N = 512 + + ALLOCATE( A(L,M,N), B(L,M,N), C(L,M,N) ) + CALL RANDOM_NUMBER(A) + CALL RANDOM_NUMBER(B) + + CALL SYSTEM_CLOCK( T0, TIC) + + DO CONCURRENT( K=1:N, J=1:M, I=1:L) ! { dg-warning "Interchanging loops" } + C(I,J,K) = A(I,J,K) +B(I,J,K) + END DO +END + |