summaryrefslogtreecommitdiff
path: root/test/FrontendC/2010-01-13-MemBarrier.c
blob: a540e59c6caad7ab0168872bf29861c441970825 (plain)
1
2
3
4
5
6
7
8
9
10
11
// RUN: %llvmgcc %s -S -o - | FileCheck %s
// XFAIL: sparc
// 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);
}