(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
aarch64/
pr94435.c
       1  /* PR target/94435 */
       2  /* { dg-do compile } */
       3  /* { dg-options "-march=armv8-a+nolse -moutline-atomics" } */
       4  
       5  int b, c, d, e, f, h;
       6  short g;
       7  int foo (int) __attribute__ ((__const__));
       8  
       9  void
      10  bar (void)
      11  {
      12    while (1)
      13      {
      14        while (1)
      15  	{
      16  	  __atomic_load_n (&e, 0);
      17  	  if (foo (2))
      18  	    __sync_val_compare_and_swap (&c, 0, f);
      19  	  b = 1;
      20  	  if (h == e)
      21  	    break;
      22  	}
      23        __sync_val_compare_and_swap (&g, -1, f);
      24      }
      25  }