/* This testcase failed on Alpha at -O2 because $27 hard register for the indirect call was exposed too early and reload couldn't allocate it for multiplication and division. */struct S {int a, b;void(*f) (long,int);};voidfoo(struct S *x){long c = x->a *50;
c /= (long) x->b;
c *= (long) x->b;
x->f(c,0);}