diff options
| author | Simonas Kazlauskas <git@kazlauskas.me> | 2015-03-04 00:57:44 +0200 |
|---|---|---|
| committer | Simonas Kazlauskas <git@kazlauskas.me> | 2015-04-03 15:48:07 +0300 |
| commit | deb097a1d252d3681d790db56cd44080bb34a6bd (patch) | |
| tree | 78a86a7bb2b787c9b2ae25afd14ddd9ceba14882 /src | |
| parent | cb4570311bda1789761a98997bbe57ac6c794101 (diff) | |
| download | rust-deb097a1d252d3681d790db56cd44080bb34a6bd.tar.gz rust-deb097a1d252d3681d790db56cd44080bb34a6bd.zip | |
Implement LLVMGetOrInsertGlobal wrapper
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustc_llvm/lib.rs | 1 | ||||
| -rw-r--r-- | src/rustllvm/RustWrapper.cpp | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/librustc_llvm/lib.rs b/src/librustc_llvm/lib.rs index 3eaa354c5e6..7030ee56979 100644 --- a/src/librustc_llvm/lib.rs +++ b/src/librustc_llvm/lib.rs @@ -912,6 +912,7 @@ extern { AddressSpace: c_uint) -> ValueRef; pub fn LLVMGetNamedGlobal(M: ModuleRef, Name: *const c_char) -> ValueRef; + pub fn LLVMGetOrInsertGlobal(M: ModuleRef, Name: *const c_char, T: TypeRef) -> ValueRef; pub fn LLVMGetFirstGlobal(M: ModuleRef) -> ValueRef; pub fn LLVMGetLastGlobal(M: ModuleRef) -> ValueRef; pub fn LLVMGetNextGlobal(GlobalVar: ValueRef) -> ValueRef; diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp index ccdc3566c09..31f75ae03b0 100644 --- a/src/rustllvm/RustWrapper.cpp +++ b/src/rustllvm/RustWrapper.cpp @@ -89,6 +89,12 @@ extern "C" LLVMValueRef LLVMGetOrInsertFunction(LLVMModuleRef M, unwrap<FunctionType>(FunctionTy))); } +extern "C" LLVMValueRef LLVMGetOrInsertGlobal(LLVMModuleRef M, + const char* Name, + LLVMTypeRef Ty) { + return wrap(unwrap(M)->getOrInsertGlobal(Name, unwrap(Ty))); +} + extern "C" LLVMTypeRef LLVMMetadataTypeInContext(LLVMContextRef C) { return wrap(Type::getMetadataTy(*unwrap(C))); } |
