28 lines
561 B
Fortran
28 lines
561 B
Fortran
! PR tree-optimization/29581
|
|
! { dg-do run }
|
|
! { dg-options "-O2 -ftree-loop-linear" }
|
|
|
|
SUBROUTINE FOO (K)
|
|
INTEGER I, J, K, A(5,5), B
|
|
COMMON A
|
|
A(1,1) = 1
|
|
10 B = 0
|
|
DO 30 I = 1, K
|
|
DO 20 J = 1, K
|
|
B = B + A(I,J)
|
|
20 CONTINUE
|
|
A(I,I) = A(I,I) * 2
|
|
30 CONTINUE
|
|
IF (B.GE.3) RETURN
|
|
GO TO 10
|
|
END SUBROUTINE
|
|
|
|
PROGRAM BAR
|
|
INTEGER A(5,5)
|
|
COMMON A
|
|
CALL FOO (2)
|
|
IF (A(1,1).NE.8) CALL ABORT
|
|
A(1,1) = 0
|
|
IF (ANY(A.NE.0)) CALL ABORT
|
|
END
|