summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/2008-03-05-syncPtr.c
diff options
context:
space:
mode:
authorEric Christopher <echristo@apple.com>2011-07-26 22:17:02 +0000
committerEric Christopher <echristo@apple.com>2011-07-26 22:17:02 +0000
commit85e5156598b1bbad0ae41cf4d0d5b845dd655ffd (patch)
tree8e736c3910a6382135cfa8b92e760e6e64a72ac3 /clang/test/CodeGen/2008-03-05-syncPtr.c
parent2dfed48caea09e0654b33a76cd9ff501c00ff7ec (diff)
downloadbcm5719-llvm-85e5156598b1bbad0ae41cf4d0d5b845dd655ffd.tar.gz
bcm5719-llvm-85e5156598b1bbad0ae41cf4d0d5b845dd655ffd.zip
Migrate most of the rest of test/FrontendC from llvm and migrate
most of them to FileCheck. llvm-svn: 136159
Diffstat (limited to 'clang/test/CodeGen/2008-03-05-syncPtr.c')
-rw-r--r--clang/test/CodeGen/2008-03-05-syncPtr.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/clang/test/CodeGen/2008-03-05-syncPtr.c b/clang/test/CodeGen/2008-03-05-syncPtr.c
new file mode 100644
index 00000000000..3cabcfef19d
--- /dev/null
+++ b/clang/test/CodeGen/2008-03-05-syncPtr.c
@@ -0,0 +1,27 @@
+// RUN: %clang_cc1 %s -emit-llvm -o - | grep llvm.atomic
+// XFAIL: sparc-sun-solaris2|arm
+// Feature currently implemented only for x86, alpha, powerpc.
+
+int* foo(int** a, int* b, int* c) {
+return __sync_val_compare_and_swap (a, b, c);
+}
+
+int foo2(int** a, int* b, int* c) {
+return __sync_bool_compare_and_swap (a, b, c);
+}
+
+int* foo3(int** a, int b) {
+ return __sync_fetch_and_add (a, b);
+}
+
+int* foo4(int** a, int b) {
+ return __sync_fetch_and_sub (a, b);
+}
+
+int* foo5(int** a, int* b) {
+ return __sync_lock_test_and_set (a, b);
+}
+
+int* foo6(int** a, int*** b) {
+ return __sync_lock_test_and_set (a, b);
+}
OpenPOWER on IntegriCloud