OSDN Git Service

Fix PR 17408 and PR 17409.
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.c-torture / execute / loop-3c.c
1 #include <limits.h>
2
3 void * a[255];
4
5 f (m)
6 {
7   int i;
8   int sh = 0x100;
9   i = m;
10   do
11     {
12       a[sh >>= 1] = ((unsigned)i << 3)  + (char*)a;
13       i += 4;
14     }
15   while (i < INT_MAX/2 + 1 + 4 * 4);
16 }
17
18 main ()
19 {
20   a[0x10] = 0;
21   a[0x08] = 0;
22   f (INT_MAX/2 + INT_MAX/4 + 2);
23   if (a[0x10] || a[0x08])
24     abort ();
25   a[0x10] = 0;
26   a[0x08] = 0;
27   f (INT_MAX/2 + 1);
28   if (! a[0x10] || a[0x08])
29     abort ();
30   exit (0);
31 }