[llvm] r216608 - Don't create a MemoryBuffer just to get the MemoryBufferRef. NFC.

Rafael Espindola rafael.espindola at gmail.com
Wed Aug 27 13:25:55 PDT 2014


Author: rafael
Date: Wed Aug 27 15:25:55 2014
New Revision: 216608

URL: http://llvm.org/viewvc/llvm-project?rev=216608&view=rev
Log:
Don't create a MemoryBuffer just to get the MemoryBufferRef. NFC.

Modified:
    llvm/trunk/tools/gold/gold-plugin.cpp

Modified: llvm/trunk/tools/gold/gold-plugin.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/gold/gold-plugin.cpp?rev=216608&r1=216607&r2=216608&view=diff
==============================================================================
--- llvm/trunk/tools/gold/gold-plugin.cpp (original)
+++ llvm/trunk/tools/gold/gold-plugin.cpp Wed Aug 27 15:25:55 2014
@@ -269,15 +269,15 @@ static const GlobalObject *getBaseObject
 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(
       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;





More information about the llvm-commits mailing list