Simplify example.
[libfirm] / ir / be / test / pbqpHeur3.c
1 unsigned a;
2 unsigned b;
3
4 unsigned  *gi1, gi2, gi3, gi4, gi5, gi6, gi7, gi8, gi9, gi10;
5 unsigned **gp;
6 unsigned use;
7
8 int main(int argc, char **argv)
9 {
10         return 0;
11 }
12
13 unsigned add_3_add_const_shift_users(unsigned i1, unsigned i2, unsigned i3,
14                 char *k1, char *k2,     char *k3,
15                 unsigned **gp1, unsigned **gp2, unsigned **gp3, unsigned **gp4,
16                 unsigned **gp5, unsigned **gp6, unsigned **gp7, unsigned **gp8,
17                 unsigned **gp9,
18                 const int c1, const int c2)
19 {
20         unsigned tmp2 = (i2 << 3) + c1;
21         unsigned tmp3 = (i3 << 3) + c2;
22
23         *gp1 = i1 + k1;
24         *gp2 = tmp2 + k1;
25         *gp3 = tmp3 + k1;
26
27         *gp4 = i1 + k2;
28         *gp5 = tmp2 + k2;
29         *gp6 = tmp3 + k2;
30
31         *gp7 = i1 + k3;
32         *gp8 = tmp2 + k3;
33         *gp9 = tmp3 + k3;
34
35         return 0;
36 }
37
38 void diamond(void)
39 {
40         unsigned as  = a << 3;
41         unsigned asb = as + 123235;
42         unsigned asc = as + 235346;
43         unsigned sum = asb + asc;
44
45         b = sum;
46
47         use = add_3_add_const_shift_users(asb, gi1, gi2,
48                         &gi3, &gi4, &gi5,
49                         &gp[0], &gp[1], &gp[2], &gp[3], &gp[4], &gp[5], &gp[6], &gp[7], &gp[8],
50                         7, 8);
51 }