diff options
| author | Luqman Aden <laden@csclub.uwaterloo.ca> | 2012-10-21 22:23:50 -0400 |
|---|---|---|
| committer | Luqman Aden <laden@csclub.uwaterloo.ca> | 2012-10-21 22:23:50 -0400 |
| commit | e1db959ec22712376763e062dc2fbffc18f33d9c (patch) | |
| tree | 63c0810cfa7f2860e77be5885cda1c9eead3dc71 /src/rustllvm/RustWrapper.cpp | |
| parent | 082d3d51674203d97fd21e6cda6181b4dccfb2e1 (diff) | |
| download | rust-e1db959ec22712376763e062dc2fbffc18f33d9c.tar.gz rust-e1db959ec22712376763e062dc2fbffc18f33d9c.zip | |
rustc: add new intrinsics - atomic_cxchg{_acq,_rel}
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
| -rw-r--r-- | src/rustllvm/RustWrapper.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp index 498a4e137f0..39a707ad320 100644 --- a/src/rustllvm/RustWrapper.cpp +++ b/src/rustllvm/RustWrapper.cpp @@ -482,6 +482,14 @@ extern "C" LLVMTypeRef LLVMMetadataType(void) { return LLVMMetadataTypeInContext(LLVMGetGlobalContext()); } +extern "C" LLVMValueRef LLVMBuildAtomicCmpXchg(LLVMBuilderRef B, + LLVMValueRef target, + LLVMValueRef old, + LLVMValueRef source, + AtomicOrdering order) { + return wrap(unwrap(B)->CreateAtomicCmpXchg(unwrap(target), unwrap(old), + unwrap(source), order)); +} extern "C" LLVMValueRef LLVMBuildAtomicRMW(LLVMBuilderRef B, AtomicRMWInst::BinOp op, LLVMValueRef target, |
