1  /* { dg-do compile } */
       2  /* { dg-options "-O2 -fno-omit-frame-pointer" } */
       3  /* { dg-additional-options "-fPIC" { target fpic } } */
       4  /* { dg-additional-options "-march=i686" { target ia32 } } */
       5  
       6  long long *a, *b, c;
       7  int d, e;
       8  int baz (void);
       9  
      10  static inline long long
      11  foo (long long *x)
      12  {
      13    return __sync_val_compare_and_swap (x, 0, 0);
      14  }
      15  
      16  void
      17  bar ()
      18  {
      19    int f = baz ();
      20    c = foo (&a[f]);
      21    if (c)
      22      e = d;
      23    a = b;
      24  }