aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2010-01-14 02:24:50 +0000
committerEvan Cheng <evan.cheng@apple.com>2010-01-14 02:24:50 +0000
commite8f422b9f39af1d2c141c101f8ca95409d708814 (patch)
treea42af0491e218f870388ea8755bc32318b16ff63
parentb2eb48180af40725b85c673cbdaeefec98894c16 (diff)
Test for r93409.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93410 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/FrontendC/2010-01-13-MemBarrier.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/test/FrontendC/2010-01-13-MemBarrier.c b/test/FrontendC/2010-01-13-MemBarrier.c
new file mode 100644
index 0000000000..53d0081f78
--- /dev/null
+++ b/test/FrontendC/2010-01-13-MemBarrier.c
@@ -0,0 +1,11 @@
+// RUN: %llvmgcc %s -S -emit-llvm -o - | FileCheck %s
+// XFAIL: sparc,powerpc
+// rdar://7536390
+
+unsigned t(unsigned *ptr, unsigned val) {
+ // CHECK: @t
+ // CHECK: call void @llvm.memory.barrier
+ // CHECK-NEXT: call i32 @llvm.atomic.swap.i32
+ // CHECK-NEXT: call void @llvm.memory.barrier
+ return __sync_lock_test_and_set(ptr, val);
+}