OSDN Git Service

* tree-loop-linear.c (try_interchange_loops): Compare memory access
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / tree-ssa / vrp18.c
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-vrp1" } */
3
4 static int blocksize = 4096;
5
6 int bar (int);
7
8 void foo (void)
9 {
10   int toread;
11   int bytes;
12   static char eof_reached = 0;
13
14   toread = blocksize;
15   bytes = 1;
16
17   while (toread != 0)
18     {
19       bytes = bar (toread);
20       if (bytes <= 0)
21         {
22           if (bytes < 0)
23             continue;
24           break;
25         }
26       toread -= bytes;
27     }
28
29   if (bytes == 0)
30     eof_reached = 1;
31 }
32
33 /* { dg-final { scan-tree-dump-times "Simplified relational" 1 "vrp1" } } */
34 /* { dg-final { cleanup-tree-dump "vrp1" } } */