111
|
1 /* { dg-do compile { target size32plus } } */
|
|
2 /* { dg-options "-O2 -ftree-loop-distribution -ftree-loop-distribute-patterns -fdump-tree-ldist-details" } */
|
|
3
|
|
4 void bar(char *s);
|
|
5 int foo1(unsigned short l)
|
|
6 {
|
|
7 char c[10000] = {};
|
|
8 unsigned short nchar = 9999;
|
|
9
|
|
10 while(nchar-- != l)
|
|
11 {
|
|
12 c[nchar] = 'A';
|
|
13 }
|
|
14
|
|
15 bar (c);
|
|
16 return 0;
|
|
17 }
|
|
18
|
|
19 int foo2()
|
|
20 {
|
|
21 char c[100000] = {};
|
|
22 unsigned short nchar;
|
|
23
|
|
24 for (nchar = 0; nchar != 1000; --nchar)
|
|
25 {
|
|
26 c[nchar] = 'A';
|
|
27 }
|
|
28
|
|
29 bar (c);
|
|
30 return 0;
|
|
31 }
|
|
32
|
|
33 int foo3()
|
|
34 {
|
|
35 char c[100000] = {};
|
|
36 unsigned short nchar;
|
|
37
|
|
38 for (nchar = 0; nchar != 1000; nchar += 3)
|
|
39 {
|
|
40 c[nchar] = 'A';
|
|
41 }
|
|
42
|
|
43 bar (c);
|
|
44 return 0;
|
|
45 }
|
|
46
|
|
47 /* { dg-final { scan-tree-dump-times "failed: evolution of offset is not affine" 3 "ldist" } } */
|