diff --git a/src/comp/lib/llvm.rs b/src/comp/lib/llvm.rs index e3d36e4ed5cc..700a31329434 100644 --- a/src/comp/lib/llvm.rs +++ b/src/comp/lib/llvm.rs @@ -278,7 +278,7 @@ native mod llvm { fn LLVMMDNodeInContext(C: ContextRef, Vals: *ValueRef, Count: uint) -> ValueRef; fn LLVMMDNode(Vals: *ValueRef, Count: uint) -> ValueRef; - fn LLVMAddNamedMetadataOperand(M: ModuleRef, Str: sbuf, SLen: uint, + fn LLVMAddNamedMetadataOperand(M: ModuleRef, Str: sbuf, Val: ValueRef); /* Operations on scalar constants */ diff --git a/src/comp/middle/debuginfo.rs b/src/comp/middle/debuginfo.rs index 540728e60224..a3b4b22ff515 100644 --- a/src/comp/middle/debuginfo.rs +++ b/src/comp/middle/debuginfo.rs @@ -73,7 +73,7 @@ fn llnull() -> ValueRef unsafe { fn add_named_metadata(cx: @crate_ctxt, name: str, val: ValueRef) { str::as_buf(name, {|sbuf| - llvm::LLVMAddNamedMetadataOperand(cx.llmod, sbuf, str::byte_len(name), + llvm::LLVMAddNamedMetadataOperand(cx.llmod, sbuf, val) }) } diff --git a/src/llvm b/src/llvm index 4fb132c80351..d578b905de8f 160000 --- a/src/llvm +++ b/src/llvm @@ -1 +1 @@ -Subproject commit 4fb132c803512f06f7cbc38baa6e86280912f800 +Subproject commit d578b905de8f9dece45aab2496a88ac548c67348 diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp index ad7fec1586b4..ed6fdaa6dc5e 100644 --- a/src/rustllvm/RustWrapper.cpp +++ b/src/rustllvm/RustWrapper.cpp @@ -172,10 +172,3 @@ extern "C" LLVMTypeRef LLVMMetadataTypeInContext(LLVMContextRef C) { extern "C" LLVMTypeRef LLVMMetadataType(void) { return LLVMMetadataTypeInContext(LLVMGetGlobalContext()); } - -extern "C" void LLVMAddNamedMetadataOperand(LLVMModuleRef M, const char *Str, - unsigned SLen, LLVMValueRef Val) -{ - NamedMDNode *N = unwrap(M)->getOrInsertNamedMetadata(StringRef(Str, SLen)); - N->addOperand(unwrap(Val)); -}