1 /* { dg-do assemble } */ 2 /* { dg-skip-if "ptxas times out" { nvptx-*-* } { "-O1" } { "" } } */ 3 /* { dg-skip-if "Array too big" { "pdp11-*-*" } { "-mint32" } } */ 4 foo()5foo () 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