2009-10-05 Paul Thomas <pault@gcc.gnu.org>
[official-gcc.git] / gcc / testsuite / gfortran.dg / pr23095.f
blob06b78b3484756b055ab72f86d3bf3da29f00eac9
1 ! { dg-do compile { target { { i?86-*-* x86_64-*-* } && ilp32 } } }
2 ! { dg-options "-w -O2 -ffloat-store -fgcse-after-reload" }
4 ! GCSE after reload made a stack register live across an abnormal
5 ! edges for one of the computed jumps. This bombed in reg-stack.
6 function foo(n)
7 real(kind=8) foo
8 integer ix, n, next
9 real(kind=8) xmax, absx
10 foo = 0.0d0
11 assign 20 to next
12 do ix = 1,n
13 go to next,(10, 30)
14 10 assign 40 to next
15 go to 40
16 20 if (absx .gt. 8.232d-11) go to 40
17 30 if (absx .le. xmax) go to 40
18 xmax = absx
19 40 go to next,(10, 30)
20 end do
21 return
22 end