summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAlp Toker <alp@nuanti.com>2014-06-27 04:33:58 +0000
committerAlp Toker <alp@nuanti.com>2014-06-27 04:33:58 +0000
commitd0996e5b33ede018999044f3c5f05e72540d97c4 (patch)
treec78a4ab783abfeb12368e4dfbf0f3b122ad89fde /include
parent493512898faad01ed17c988f422a644e6fe83264 (diff)
downloadllvm-d0996e5b33ede018999044f3c5f05e72540d97c4.tar.gz
llvm-d0996e5b33ede018999044f3c5f05e72540d97c4.tar.bz2
llvm-d0996e5b33ede018999044f3c5f05e72540d97c4.tar.xz
ParseIR: don't take ownership of the MemoryBuffer
clang was needlessly duplicating whole memory buffer contents in an attempt to satisfy unclear ownership semantics. Let's just hide internal LLVM quirks and present a simple non-owning interface. The public C API preserves previous behaviour for stability. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211861 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/IRReader/IRReader.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/include/llvm/IRReader/IRReader.h b/include/llvm/IRReader/IRReader.h
index e2ae5f7164..20022cf8d8 100644
--- a/include/llvm/IRReader/IRReader.h
+++ b/include/llvm/IRReader/IRReader.h
@@ -40,9 +40,9 @@ Module *getLazyIRFileModule(const std::string &Filename, SMDiagnostic &Err,
/// If the given MemoryBuffer holds a bitcode image, return a Module
/// for it. Otherwise, attempt to parse it as LLVM Assembly and return
-/// a Module for it. This function *always* takes ownership of the given
-/// MemoryBuffer.
-Module *ParseIR(MemoryBuffer *Buffer, SMDiagnostic &Err, LLVMContext &Context);
+/// a Module for it. This function *never* takes ownership of Buffer.
+Module *ParseIR(const MemoryBuffer *Buffer, SMDiagnostic &Err,
+ LLVMContext &Context);
/// If the given file holds a bitcode image, return a Module for it.
/// Otherwise, attempt to parse it as LLVM Assembly and return a Module