summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorFilip Pizlo <fpizlo@apple.com>2013-11-20 00:07:49 +0000
committerFilip Pizlo <fpizlo@apple.com>2013-11-20 00:07:49 +0000
commitd54beffaa39fe81f0d77305385419c96baefe708 (patch)
tree16aed1de9a0e20ff7e32da822dc3f0be87557f36 /include
parent3da011f561dfbc5e12ab25af09f6020ceabb28c0 (diff)
downloadllvm-d54beffaa39fe81f0d77305385419c96baefe708.tar.gz
llvm-d54beffaa39fe81f0d77305385419c96baefe708.tar.bz2
llvm-d54beffaa39fe81f0d77305385419c96baefe708.tar.xz
Expose the fence instruction via the C API.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195173 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm-c/Core.h4
-rw-r--r--include/llvm/IR/IRBuilder.h5
2 files changed, 6 insertions, 3 deletions
diff --git a/include/llvm-c/Core.h b/include/llvm-c/Core.h
index 9953d52edd..c5707224e6 100644
--- a/include/llvm-c/Core.h
+++ b/include/llvm-c/Core.h
@@ -2663,7 +2663,9 @@ LLVMValueRef LLVMBuildIsNotNull(LLVMBuilderRef, LLVMValueRef Val,
const char *Name);
LLVMValueRef LLVMBuildPtrDiff(LLVMBuilderRef, LLVMValueRef LHS,
LLVMValueRef RHS, const char *Name);
-LLVMValueRef LLVMBuildAtomicRMW(LLVMBuilderRef B,LLVMAtomicRMWBinOp op,
+LLVMValueRef LLVMBuildFence(LLVMBuilderRef B, LLVMAtomicOrdering ordering,
+ LLVMBool singleThread, const char *Name);
+LLVMValueRef LLVMBuildAtomicRMW(LLVMBuilderRef B, LLVMAtomicRMWBinOp op,
LLVMValueRef PTR, LLVMValueRef Val,
LLVMAtomicOrdering ordering,
LLVMBool singleThread);
diff --git a/include/llvm/IR/IRBuilder.h b/include/llvm/IR/IRBuilder.h
index 8d1432d6c9..56e818417a 100644
--- a/include/llvm/IR/IRBuilder.h
+++ b/include/llvm/IR/IRBuilder.h
@@ -915,8 +915,9 @@ public:
return SI;
}
FenceInst *CreateFence(AtomicOrdering Ordering,
- SynchronizationScope SynchScope = CrossThread) {
- return Insert(new FenceInst(Context, Ordering, SynchScope));
+ SynchronizationScope SynchScope = CrossThread,
+ const Twine &Name = "") {
+ return Insert(new FenceInst(Context, Ordering, SynchScope), Name);
}
AtomicCmpXchgInst *CreateAtomicCmpXchg(Value *Ptr, Value *Cmp, Value *New,
AtomicOrdering Ordering,