diff options
| author | Rafael Espindola <rafael.espindola@gmail.com> | 2014-08-27 20:25:55 +0000 |
|---|---|---|
| committer | Rafael Espindola <rafael.espindola@gmail.com> | 2014-08-27 20:25:55 +0000 |
| commit | eeec8e63c0cde8996ff63b14d709f27eff4f2da6 (patch) | |
| tree | d7a13bcc0cce4d6c80314f1aa5914c2b1b154dd1 | |
| parent | 4e82ec9caa92f9ae089e118317592c8fa886ced9 (diff) | |
| download | bcm5719-llvm-eeec8e63c0cde8996ff63b14d709f27eff4f2da6.tar.gz bcm5719-llvm-eeec8e63c0cde8996ff63b14d709f27eff4f2da6.zip | |
Don't create a MemoryBuffer just to get the MemoryBufferRef. NFC.
llvm-svn: 216608
| -rw-r--r-- | llvm/tools/gold/gold-plugin.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/llvm/tools/gold/gold-plugin.cpp b/llvm/tools/gold/gold-plugin.cpp index 69d33c9a8f9..b08f74d5916 100644 --- a/llvm/tools/gold/gold-plugin.cpp +++ b/llvm/tools/gold/gold-plugin.cpp @@ -269,15 +269,15 @@ static const GlobalObject *getBaseObject(const GlobalValue &GV) { static ld_plugin_status claim_file_hook(const ld_plugin_input_file *file, int *claimed) { LLVMContext Context; - std::unique_ptr<MemoryBuffer> buffer; + MemoryBufferRef BufferRef; + std::unique_ptr<MemoryBuffer> Buffer; if (get_view) { const void *view; if (get_view(file->handle, &view) != LDPS_OK) { message(LDPL_ERROR, "Failed to get a view of %s", file->name); return LDPS_ERR; } - buffer = MemoryBuffer::getMemBuffer(StringRef((char *)view, file->filesize), - "", false); + BufferRef = MemoryBufferRef(StringRef((char *)view, file->filesize), ""); } else { int64_t offset = 0; // Gold has found what might be IR part-way inside of a file, such as @@ -292,12 +292,12 @@ static ld_plugin_status claim_file_hook(const ld_plugin_input_file *file, message(LDPL_ERROR, EC.message().c_str()); return LDPS_ERR; } - buffer = std::move(BufferOrErr.get()); + Buffer = std::move(BufferOrErr.get()); + BufferRef = Buffer->getMemBufferRef(); } ErrorOr<object::IRObjectFile *> ObjOrErr = - object::IRObjectFile::createIRObjectFile(buffer->getMemBufferRef(), - Context); + object::IRObjectFile::createIRObjectFile(BufferRef, Context); std::error_code EC = ObjOrErr.getError(); if (EC == BitcodeError::InvalidBitcodeSignature) return LDPS_OK; |

