1/* { dg-do assemble } */
2/* { dg-skip-if "ptxas times out" { nvptx-*-* } { "-O1" } { "" } } */
3
4foo ()
5{
6  int r0[8186 ];
7  int r1[2 ];
8  int r2[2 ];
9  int bitm0[2 ];
10  int bitm1[2 ];
11  int bitm2[2 ];
12
13  int i,j,k,m,n,m_max;
14  int f;
15  double fm,ft;
16
17  while (1) {
18
19    if (m%4 == 2)
20      ++m;
21
22    if (m_max != 0 && m > m_max)
23      break;
24
25    fm=m;
26
27    r0[k=1]=0;
28    bitm0[0] = 0;
29
30      while ( n%f == 0 ) {
31	while ( (ft != 0) && (ft < fm )) {
32	  bitm1[i] = 0;
33	  r1[i]=0;
34          }
35
36	while ( r0[i] != 0 && r1[i] != 0 ) {
37	  if ( r0[i] < r1[i] ) {
38	    bitm2[k] = bitm0[i];
39	    r2[k++]=0;
40	  }
41	  else if ( r0[i] > r1[j] ) {
42	    bitm2[k] = bitm1[j];
43	    r2[k++]=r1[j++];
44	  }
45	  else {
46	    bitm1[k] = bitm0[i];
47	    r2[k++]=r0[i++];
48	  }
49	}
50      }
51  }
52}
53