From d96d553d76b56496e73aa30910d81f0d692f36fc Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Tue, 26 Aug 2014 21:49:01 +0000 Subject: Pass a MemoryBufferRef when we can avoid taking ownership. The attached patch simplifies a few interfaces that don't need to take ownership of a buffer. For example, both parseAssembly and parseBitcodeFile will parse the entire buffer before returning. There is no need to take ownership. Using a MemoryBufferRef makes it obvious in the type signature that there is no ownership transfer. llvm-svn: 216488 --- llvm/lib/Object/IRObjectFile.cpp | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'llvm/lib/Object/IRObjectFile.cpp') diff --git a/llvm/lib/Object/IRObjectFile.cpp b/llvm/lib/Object/IRObjectFile.cpp index 2ef359c7f00..964c7ed691d 100644 --- a/llvm/lib/Object/IRObjectFile.cpp +++ b/llvm/lib/Object/IRObjectFile.cpp @@ -268,10 +268,7 @@ ErrorOr llvm::object::IRObjectFile::createIRObjectFile(MemoryBufferRef Object, LLVMContext &Context) { - StringRef Data = Object.getBuffer(); - StringRef FileName = Object.getBufferIdentifier(); - std::unique_ptr Buff( - MemoryBuffer::getMemBuffer(Data, FileName, false)); + std::unique_ptr Buff(MemoryBuffer::getMemBuffer(Object, false)); ErrorOr MOrErr = getLazyBitcodeModule(Buff.get(), Context); if (std::error_code EC = MOrErr.getError()) -- cgit v1.2.3