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