summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/graphite/pr43349.f
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gfortran.dg/graphite/pr43349.f')
-rw-r--r--gcc/testsuite/gfortran.dg/graphite/pr43349.f35
1 files changed, 35 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/graphite/pr43349.f b/gcc/testsuite/gfortran.dg/graphite/pr43349.f
new file mode 100644
index 000000000..86e408f9b
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/graphite/pr43349.f
@@ -0,0 +1,35 @@
+! { dg-options "-O2 -floop-interchange" }
+
+ SUBROUTINE BUG(A,B,X,Y,Z,N)
+ IMPLICIT NONE
+ DOUBLE PRECISION A(*),B(*),X(*),Y(*),Z(*)
+ INTEGER N,J,K
+ K = 0
+ DO J = 1,N
+ K = K+1
+ X(K) = B(J+N*7)
+ Y(K) = B(J+N*8)
+ Z(K) = B(J+N*2) + A(J+N*2)
+ K = K+1
+ X(K) = B(J+N*3) + A(J+N*3)
+ Y(K) = B(J+N*9) + A(J)
+ Z(K) = B(J+N*15)
+ K = K+1
+ X(K) = B(J+N*4) + A(J+N*4)
+ Y(K) = B(J+N*15)
+ Z(K) = B(J+N*10) + A(J)
+ K = K+1
+ X(K) = B(J+N*11) + A(J+N)
+ Y(K) = B(J+N*5) + A(J+N*5)
+ Z(K) = B(J+N*16)
+ K = K+1
+ X(K) = B(J+N*16)
+ Y(K) = B(J+N*6) + A(J+N*6)
+ Z(K) = B(J+N*12) + A(J+N)
+ K = K+1
+ X(K) = B(J+N*13) + A(J+N*2)
+ Y(K) = B(J+N*17)
+ Z(K) = B(J+N*7) + A(J+N*7)
+ ENDDO
+ RETURN
+ END