diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/atomic/stdatomic-fence.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/atomic/stdatomic-fence.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/atomic/stdatomic-fence.c b/gcc/testsuite/gcc.dg/atomic/stdatomic-fence.c new file mode 100644 index 00000000000..5f6c4e0f9d7 --- /dev/null +++ b/gcc/testsuite/gcc.dg/atomic/stdatomic-fence.c @@ -0,0 +1,26 @@ +/* Test atomic_*_fence routines for existence and execution with each + valid memory model. */ +/* { dg-do run } */ +/* { dg-options "-std=c11 -pedantic-errors" } */ + +#include <stdatomic.h> + +int +main () +{ + atomic_thread_fence (memory_order_relaxed); + atomic_thread_fence (memory_order_consume); + atomic_thread_fence (memory_order_acquire); + atomic_thread_fence (memory_order_release); + atomic_thread_fence (memory_order_acq_rel); + atomic_thread_fence (memory_order_seq_cst); + + atomic_signal_fence (memory_order_relaxed); + atomic_signal_fence (memory_order_consume); + atomic_signal_fence (memory_order_acquire); + atomic_signal_fence (memory_order_release); + atomic_signal_fence (memory_order_acq_rel); + atomic_signal_fence (memory_order_seq_cst); + + return 0; +} |