(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
atomic-fence.c
       1  /* Test __atomic routines for existence and execution with each valid 
       2     memory model.  */
       3  /* { dg-do run } */
       4  /* { dg-require-effective-target sync_char_short } */
       5  
       6  
       7  /* Test that __atomic_{thread,signal}_fence builtins execute.  */
       8  
       9  int
      10  main ()
      11  {
      12    __atomic_thread_fence (__ATOMIC_RELAXED);
      13    __atomic_thread_fence (__ATOMIC_CONSUME);
      14    __atomic_thread_fence (__ATOMIC_ACQUIRE);
      15    __atomic_thread_fence (__ATOMIC_RELEASE);
      16    __atomic_thread_fence (__ATOMIC_ACQ_REL);
      17    __atomic_thread_fence (__ATOMIC_SEQ_CST);
      18  
      19    __atomic_signal_fence (__ATOMIC_RELAXED);
      20    __atomic_signal_fence (__ATOMIC_CONSUME);
      21    __atomic_signal_fence (__ATOMIC_ACQUIRE);
      22    __atomic_signal_fence (__ATOMIC_RELEASE);
      23    __atomic_signal_fence (__ATOMIC_ACQ_REL);
      24    __atomic_signal_fence (__ATOMIC_SEQ_CST);
      25  
      26    return 0;
      27  }
      28