1/* { dg-do compile { target ia64-*-* } } */ 2/* { dg-options "-O2" } */ 3 4int __sync_fetch_and_add_si (int *, int); 5 6inline unsigned int 7bar (volatile unsigned int *mem, unsigned int val) 8{ 9 return __sync_fetch_and_add_si((int *)mem, (int)val); 10} 11 12volatile unsigned int x; 13 14void foo (unsigned short *a) 15{ 16 *a = bar (&x, 1) + 1; 17} 18