diff options
author | Abramo Bagnara <abramo.bagnara@bugseng.com> | 2012-09-22 09:05:22 +0000 |
---|---|---|
committer | Abramo Bagnara <abramo.bagnara@bugseng.com> | 2012-09-22 09:05:22 +0000 |
commit | 2ad11cd666f8e80463b5fd155072633f8e1283a4 (patch) | |
tree | 4d2b6854e66430acaf229b4d4f853a1b9d75b9b4 /test/Sema/builtins.c | |
parent | f0fdefc13a58db2a8b32bb47ac23bc16efad6fda (diff) |
Avoid multiple atomic builtin declaration.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164454 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Sema/builtins.c')
-rw-r--r-- | test/Sema/builtins.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/test/Sema/builtins.c b/test/Sema/builtins.c index b8b03677fd..357b7b6aa0 100644 --- a/test/Sema/builtins.c +++ b/test/Sema/builtins.c @@ -51,6 +51,20 @@ void test9(short v) { } } +// overloaded atomics should be declared only once. +void test9_1(volatile int* ptr, int val) { + __sync_fetch_and_add_4(ptr, val); +} +void test9_2(volatile int* ptr, int val) { + __sync_fetch_and_add(ptr, val); +} +void test9_3(volatile int* ptr, int val) { + __sync_fetch_and_add_4(ptr, val); + __sync_fetch_and_add(ptr, val); + __sync_fetch_and_add(ptr, val); + __sync_fetch_and_add_4(ptr, val); + __sync_fetch_and_add_4(ptr, val); +} // rdar://7236819 void test10(void) __attribute__((noreturn)); |