1 /* This testcase failed on Alpha at -O2 because $27 hard register
2    for the indirect call was exposed too early and reload couldn't
3    allocate it for multiplication and division.  */
4 
5 struct S {
6   int a, b;
7   void (*f) (long, int);
8 };
9 
foo(struct S * x)10 void foo (struct S *x)
11 {
12   long c = x->a * 50;
13   c /= (long) x->b;
14   c *= (long) x->b;
15   x->f (c, 0);
16 }
17