blob: 06b78b3484756b055ab72f86d3bf3da29f00eac9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
! { dg-do compile { target { { i?86-*-* x86_64-*-* } && ilp32 } } }
! { dg-options "-w -O2 -ffloat-store -fgcse-after-reload" }
!
! GCSE after reload made a stack register live across an abnormal
! edges for one of the computed jumps. This bombed in reg-stack.
function foo(n)
real(kind=8) foo
integer ix, n, next
real(kind=8) xmax, absx
foo = 0.0d0
assign 20 to next
do ix = 1,n
go to next,(10, 30)
10 assign 40 to next
go to 40
20 if (absx .gt. 8.232d-11) go to 40
30 if (absx .le. xmax) go to 40
xmax = absx
40 go to next,(10, 30)
end do
return
end
|