1*3348c083SValentin Clement! RUN: bbc %s -o - | FileCheck %s 2*3348c083SValentin Clement 3*3348c083SValentin Clement! CHECK-LABEL: _QPsub 4*3348c083SValentin Clement 5*3348c083SValentin Clement! F77 code for the array computation c = ((a + b) * c) + (b / 2.0). 6*3348c083SValentin Clement! (Eventually, test that the temporary arrays are eliminated.) 7*3348c083SValentin Clementsubroutine sub(a,b,c,i,j,k) 8*3348c083SValentin Clement real a(i,j,k), b(i,j,k), c(i,j,k) 9*3348c083SValentin Clement real t1(i,j,k), t2(i,j,k) 10*3348c083SValentin Clement integer i, j, k 11*3348c083SValentin Clement integer r, s, t 12*3348c083SValentin Clement 13*3348c083SValentin Clement do t = 1, k 14*3348c083SValentin Clement do s = 1, j 15*3348c083SValentin Clement do r = 1, i 16*3348c083SValentin Clement t1(r,s,t) = a(r,s,t) + b(r,s,t) 17*3348c083SValentin Clement end do 18*3348c083SValentin Clement end do 19*3348c083SValentin Clement end do 20*3348c083SValentin Clement do t = 1, k 21*3348c083SValentin Clement do s = 1, j 22*3348c083SValentin Clement do r = 1, i 23*3348c083SValentin Clement t2(r,s,t) = t1(r,s,t) * c(r,s,t) 24*3348c083SValentin Clement end do 25*3348c083SValentin Clement end do 26*3348c083SValentin Clement end do 27*3348c083SValentin Clement do t = 1, k 28*3348c083SValentin Clement do s = 1, j 29*3348c083SValentin Clement do r = 1, i 30*3348c083SValentin Clement c(r,s,t) = t2(r,s,t) + b(r,s,t) / 2.0 31*3348c083SValentin Clement end do 32*3348c083SValentin Clement end do 33*3348c083SValentin Clement end do 34*3348c083SValentin Clementend subroutine sub 35