1/* PR middle-end/47581 */
2/* { dg-do compile } */
3/* { dg-options "-O2 -fomit-frame-pointer -mpreferred-stack-boundary=4 -mincoming-stack-boundary=4" } */
4/* { dg-final { scan-assembler-not "(sub|add)l\[\\t \]*\\$\[0-9\]*,\[\\t \]*%\[re\]?sp" } } */
5
6unsigned
7foo (unsigned a, unsigned b)
8{
9  return ((unsigned long long) a * (unsigned long long) b) >> 32;
10}
11