1/* PR target/39431 */ 2/* { dg-do compile } */ 3/* { dg-options "-O2" } */ 4/* { dg-options "-O2 -march=i686 -fpic" { target { ia32 && fpic } } } */ 5 6extern void bar (char *, int); 7 8int 9foo (long long *p, long long oldv, long long *q, int n) 10{ 11 char buf[n]; 12 bar (buf, n); 13 p[256 + n] = __sync_val_compare_and_swap (p + n, oldv, oldv + 6); 14 return __sync_bool_compare_and_swap (q + n, oldv, oldv + 8); 15} 16