1 /* { dg-do compile } */
2 /* { dg-options "-O3 -fipa-cp -fipa-cp-clone -fdump-ipa-cp -fno-early-inlining" } */
3 /* { dg-add-options bind_pic_locally } */
5 extern int get_stuff (int);
6 extern void do_stuff (int);
7 extern void do_stuff2 (int);
8 extern void do_other_stuff (void);
9 extern int get_element (int, int, int);
10 extern int adjust (int, int, int, int);
19 for (c
= 0 ; c
< count
; c
++)
22 /* The following is just something big that can go away. */
28 for (i
= 0; i
< 64; i
++)
29 for (j
= 0; j
< 64; j
++)
30 a
[i
][j
] = get_element (p
+ c
, i
, j
);
32 for (k
= 0; k
< 4; k
++)
36 for (i
= 1; i
< 63; i
++)
37 for (j
= 62; j
> 0; j
--)
38 a
[i
][j
] += adjust (a
[i
-1][j
], a
[i
][j
-1],
39 a
[i
+1][j
], a
[i
][j
+1]);
41 for (i
= 4; i
< 64; i
+= 4)
42 for (j
= 4; j
< 64; j
+= 4)
61 do_stuff2 (2 * (q
+ 1));
74 for (i
= 0; i
< 36; i
++)
75 for (j
= 0; j
< 36; j
++)
76 do_stuff (get_stuff (q
* i
+ 2));
96 /* { dg-final { scan-ipa-dump-times "Creating a specialized node of foo" 1 "cp" } } */
97 /* { dg-final { scan-ipa-dump-times "replacing param .. p with const 0" 3 "cp" } } */
98 /* { dg-final { scan-ipa-dump "replacing param .0 s with const 4" "cp" } } */
99 /* { dg-final { cleanup-ipa-dump "cp" } } */