1 // RUN: %clang_cc1 %s -triple=i686-apple-darwin9 -verify
2 // rdar://13973577
3
4 struct foo {
5 int big[128];
6 };
7 struct bar {
8 char c[3];
9 };
10
11 struct bar smallThing;
12 struct foo bigThing;
13 _Atomic(struct foo) bigAtomic;
14
structAtomicStore()15 void structAtomicStore() {
16 struct foo f = {0};
17 __c11_atomic_store(&bigAtomic, f, 5); // expected-error {{atomic store requires runtime support that is not available for this target}}
18
19 struct bar b = {0};
20 __atomic_store(&smallThing, &b, 5);
21
22 __atomic_store(&bigThing, &f, 5);
23 }
24
structAtomicLoad()25 void structAtomicLoad() {
26 struct foo f = __c11_atomic_load(&bigAtomic, 5); // expected-error {{atomic load requires runtime support that is not available for this target}}
27 struct bar b;
28 __atomic_load(&smallThing, &b, 5);
29
30 __atomic_load(&bigThing, &f, 5);
31 }
32