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