]>
Commit | Line | Data |
---|---|---|
45ddb395 RB |
1 | /* { dg-do compile } */ |
2 | /* { dg-options "-O2 -fdump-tree-cddce1" } */ | |
3 | ||
4 | void foo(); | |
5 | ||
6 | void l(unsigned int r) { | |
7 | unsigned int q = 0; | |
8 | unsigned int c = r; | |
9 | for (unsigned int x = 0; x<r; x++) { | |
10 | if (q == c) { | |
11 | foo(); | |
12 | c *= 2; | |
13 | } | |
14 | q++; | |
15 | } | |
16 | } | |
17 | ||
18 | /* We should be able to elide the body of the function by means of | |
19 | figuring out the equality between the two IVs and then simplifying | |
20 | the q == c test. */ | |
21 | /* { dg-final { scan-tree-dump-not "foo" "cddce1" } } */ | |
22 | /* { dg-final { scan-tree-dump-times "bb" 1 "cddce1" } } */ |