2017-02-20 Paul Thomas <pault@gcc.gnu.org>
[official-gcc.git] / gcc / testsuite / gfortran.dg / pr69987.f90
blob9e0c9ffc72141424a96e3ac0c36955db817f8d43
1 ! { dg-do compile }
2 ! { dg-options "-O3 -fprefetch-loop-arrays -w" }
4 MODULE cp_lbfgs
5 INTEGER, PARAMETER :: dp=8
6 CONTAINS
7 SUBROUTINE mainlb(n, m, x, l, u, nbd, f, g, factr, pgtol, ws, wy, &
8 csave, lsave, isave, dsave)
9 REAL(KIND=dp) :: x(n), l(n), u(n)
10 REAL(KIND=dp) :: f, g(n), factr, pgtol, ws(n, m), wy(n, m), sy(m, m), &
11 ss(m, m), wt(m, m), wn(2*m, 2*m), snd(2*m, 2*m), z(n), r(n), d(n), &
12 t(n), wa(8*m)
13 CHARACTER(len=60) :: task
14 IF (task == 'START') THEN
15 IF (task(1:5) == 'FG_LN') GOTO 666
16 ENDIF
17 222 CONTINUE
18 DO 40 i = 1, n
19 d(i) = z(i) - x(i)
20 40 ENDDO
21 666 CONTINUE
22 IF (info /= 0 .OR. iback >= 20) THEN
23 CALL dcopy(n,r,1,g,1)
24 ENDIF
25 GOTO 222
26 END SUBROUTINE mainlb
27 END MODULE cp_lbfgs