1/* PR optimization/8746 */
2/* { dg-do run } */
3/* { dg-require-effective-target ia32 } */
4/* { dg-options "-O1 -mtune=i586" } */
5
6extern void abort (void);
7
8unsigned short r0;
9
10int foo(int x)
11{
12  unsigned short r = x&0xf000;
13
14  if (!(r&0x8000))
15  {
16    r0 = r;
17    return 0;
18  }
19  else
20    return 1;
21}
22
23int main(void)
24{
25  if (foo(0x8000) != 1)
26    abort();
27
28   return 0;
29}
30