annotate gcc/testsuite/gcc.c-torture/compile/920501-4.c @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children 84e7813d76e9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* { dg-do assemble } */
kono
parents:
diff changeset
2 /* { dg-skip-if "ptxas times out" { nvptx-*-* } { "-O1" } { "" } } */
kono
parents:
diff changeset
3
kono
parents:
diff changeset
4 foo ()
kono
parents:
diff changeset
5 {
kono
parents:
diff changeset
6 int r0[8186 ];
kono
parents:
diff changeset
7 int r1[2 ];
kono
parents:
diff changeset
8 int r2[2 ];
kono
parents:
diff changeset
9 int bitm0[2 ];
kono
parents:
diff changeset
10 int bitm1[2 ];
kono
parents:
diff changeset
11 int bitm2[2 ];
kono
parents:
diff changeset
12
kono
parents:
diff changeset
13 int i,j,k,m,n,m_max;
kono
parents:
diff changeset
14 int f;
kono
parents:
diff changeset
15 double fm,ft;
kono
parents:
diff changeset
16
kono
parents:
diff changeset
17 while (1) {
kono
parents:
diff changeset
18
kono
parents:
diff changeset
19 if (m%4 == 2)
kono
parents:
diff changeset
20 ++m;
kono
parents:
diff changeset
21
kono
parents:
diff changeset
22 if (m_max != 0 && m > m_max)
kono
parents:
diff changeset
23 break;
kono
parents:
diff changeset
24
kono
parents:
diff changeset
25 fm=m;
kono
parents:
diff changeset
26
kono
parents:
diff changeset
27 r0[k=1]=0;
kono
parents:
diff changeset
28 bitm0[0] = 0;
kono
parents:
diff changeset
29
kono
parents:
diff changeset
30 while ( n%f == 0 ) {
kono
parents:
diff changeset
31 while ( (ft != 0) && (ft < fm )) {
kono
parents:
diff changeset
32 bitm1[i] = 0;
kono
parents:
diff changeset
33 r1[i]=0;
kono
parents:
diff changeset
34 }
kono
parents:
diff changeset
35
kono
parents:
diff changeset
36 while ( r0[i] != 0 && r1[i] != 0 ) {
kono
parents:
diff changeset
37 if ( r0[i] < r1[i] ) {
kono
parents:
diff changeset
38 bitm2[k] = bitm0[i];
kono
parents:
diff changeset
39 r2[k++]=0;
kono
parents:
diff changeset
40 }
kono
parents:
diff changeset
41 else if ( r0[i] > r1[j] ) {
kono
parents:
diff changeset
42 bitm2[k] = bitm1[j];
kono
parents:
diff changeset
43 r2[k++]=r1[j++];
kono
parents:
diff changeset
44 }
kono
parents:
diff changeset
45 else {
kono
parents:
diff changeset
46 bitm1[k] = bitm0[i];
kono
parents:
diff changeset
47 r2[k++]=r0[i++];
kono
parents:
diff changeset
48 }
kono
parents:
diff changeset
49 }
kono
parents:
diff changeset
50 }
kono
parents:
diff changeset
51 }
kono
parents:
diff changeset
52 }