diff --git a/src/rustc/lib/llvm.rs b/src/rustc/lib/llvm.rs index 641a4f5460c..376012dcf4e 100644 --- a/src/rustc/lib/llvm.rs +++ b/src/rustc/lib/llvm.rs @@ -969,10 +969,6 @@ extern mod llvm { fn LLVMConstNamedStruct(S: TypeRef, ConstantVals: *ValueRef, Count: c_uint) -> ValueRef; - - /** Links LLVM modules together. `Src` is destroyed by this call and - must never be referenced again. */ - fn LLVMLinkModules(Dest: ModuleRef, Src: ModuleRef) -> Bool; } fn SetInstructionCallConv(Instr: ValueRef, CC: CallConv) { diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp index 8135465b30d..a9f759b26aa 100644 --- a/src/rustllvm/RustWrapper.cpp +++ b/src/rustllvm/RustWrapper.cpp @@ -61,20 +61,6 @@ extern "C" void LLVMRustAddPrintModulePass(LLVMPassManagerRef PMR, PM->run(*unwrap(M)); } -extern "C" bool LLVMLinkModules(LLVMModuleRef Dest, LLVMModuleRef Src) { - static std::string err; - - // For some strange reason, unwrap() doesn't work here. "No matching - // function" error. - Module *DM = reinterpret_cast(Dest); - Module *SM = reinterpret_cast(Src); - if (Linker::LinkModules(DM, SM, Linker::DestroySource, &err)) { - LLVMRustError = err.c_str(); - return false; - } - return true; -} - void LLVMInitializeX86TargetInfo(); void LLVMInitializeX86Target(); void LLVMInitializeX86TargetMC(); diff --git a/src/rustllvm/rustllvm.def.in b/src/rustllvm/rustllvm.def.in index ed3799028d4..f3a3d7f4f23 100644 --- a/src/rustllvm/rustllvm.def.in +++ b/src/rustllvm/rustllvm.def.in @@ -7,7 +7,6 @@ LLVMRustConstInt LLVMRustParseBitcode LLVMRustParseAssemblyFile LLVMRustPrintPassTimings -LLVMLinkModules LLVMCreateObjectFile LLVMDisposeObjectFile LLVMGetSections