/* PR optimization/8746 */
/* { dg-do run } */
/* { dg-require-effective-target ia32 } */
/* { dg-options "-O1 -mtune=i586" } */

extern void abort (void);

volatile int j;

void f0() { j=0; }
void f1() { j=1; }

int foo(int x)
{
  if ((short int)(x&0x8000) > (short int)0)
  {
    f0();
    return 0;
  }
  else
  {
    f1();
    return 1;
  }
}

int main(void)
{
  if (foo(0x8000) != 1)
    abort();

   return 0;
}
