summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2014-08-27 20:25:55 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2014-08-27 20:25:55 +0000
commiteeec8e63c0cde8996ff63b14d709f27eff4f2da6 (patch)
treed7a13bcc0cce4d6c80314f1aa5914c2b1b154dd1
parent4e82ec9caa92f9ae089e118317592c8fa886ced9 (diff)
downloadbcm5719-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.cpp12
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;
OpenPOWER on IntegriCloud