1 /* { dg-do compile } */
2 /* { dg-options "-O3 -fdump-tree-pre -fno-tree-loop-im" } */
3 int db[100];
4 int a_global_var, fact;
main()5 int main()
6 {
7 int i,j=0;
8 do
9 {
10 for (i=0; i<100; ++i)
11 db[i] = i;
12 fact = a_global_var * i;
13 }
14 while (j++ < 100);
15 }
16 /* We want to have exactly one load (not two) from a_global_var,
17 and we want that load to be into a PRE temporary. */
18 /* { dg-final { scan-tree-dump-times "= a_global_var;" 1 "pre" } } */
19 /* { dg-final { scan-tree-dump "pretmp\[^\\n\]* = a_global_var;" "pre" } } */
20