| ! { dg-do run } |
| ! { dg-additional-options "-ftree-vectorize -fno-guess-branch-probability" } |
| module testmod |
| implicit none |
| |
| contains |
| |
| subroutine foo(n) |
| integer, intent(in) :: n |
| real :: r(0:n,-n:n), a(0:n,-n:n), dj |
| integer :: k, j |
| |
| ! initialize with some dummy values |
| do j = -n, n |
| a(:, j) = j |
| r(:,j) = j + 1 |
| end do |
| |
| ! here be dragons |
| do k = 0, n |
| dj = r(k, k - 2) * a(k, k - 2) |
| r(k,k) = a(k, k - 1) * dj |
| enddo |
| |
| if (r(0,0) .ne. -2.) STOP 1 |
| |
| end subroutine |
| |
| end module |
| |
| program test |
| use testmod |
| implicit none |
| call foo(5) |
| end program |