diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2012-10-30 01:15:28 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2012-10-30 01:15:28 +0000 |
commit | fb9c49e250b58f9262058adebc285e420384eb93 (patch) | |
tree | b113a12dab7af30f5c85f2379c7f636055ce213b /clang/test/CodeGen/atomic-ops.c | |
parent | 4739f2eb190176baccd34cf498027a4fb76dd384 (diff) | |
download | bcm5719-llvm-fb9c49e250b58f9262058adebc285e420384eb93.tar.gz bcm5719-llvm-fb9c49e250b58f9262058adebc285e420384eb93.zip |
Don't crash on bad atomic operations. PR14176.
llvm-svn: 166992
Diffstat (limited to 'clang/test/CodeGen/atomic-ops.c')
-rw-r--r-- | clang/test/CodeGen/atomic-ops.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/clang/test/CodeGen/atomic-ops.c b/clang/test/CodeGen/atomic-ops.c index 1a9ed36ee23..d79f4052234 100644 --- a/clang/test/CodeGen/atomic-ops.c +++ b/clang/test/CodeGen/atomic-ops.c @@ -311,4 +311,13 @@ void atomic_init_foo() // CHECK: } } +// CHECK: @invalid_atomic +void invalid_atomic(_Atomic(int) *i) { + __c11_atomic_store(i, 1, memory_order_consume); + __c11_atomic_store(i, 1, memory_order_acquire); + __c11_atomic_store(i, 1, memory_order_acq_rel); + __c11_atomic_load(i, memory_order_release); + __c11_atomic_load(i, memory_order_acq_rel); +} + #endif |