summaryrefslogtreecommitdiffstats
path: root/lld/lib/ReaderWriter
diff options
context:
space:
mode:
authorAhmed Charles <ahmedcharles@gmail.com>2014-03-13 16:20:38 +0000
committerAhmed Charles <ahmedcharles@gmail.com>2014-03-13 16:20:38 +0000
commit13c70b6d4bc0103ee0eca170d44bdb183328a5b5 (patch)
tree7cf82b2fcb802d76e3e5acfc83709e7b8299166c /lld/lib/ReaderWriter
parent445a939db82713007c9b532144a405f05a587c52 (diff)
downloadbcm5719-llvm-13c70b6d4bc0103ee0eca170d44bdb183328a5b5.tar.gz
bcm5719-llvm-13c70b6d4bc0103ee0eca170d44bdb183328a5b5.zip
Replace OwningPtr with std::unique_ptr.
This results in some simplifications to the code where an OwningPtr had to be used with the previous api and then ownership moved to a unique_ptr for the rest of lld. llvm-svn: 203809
Diffstat (limited to 'lld/lib/ReaderWriter')
-rw-r--r--lld/lib/ReaderWriter/ELF/Chunk.h3
-rw-r--r--lld/lib/ReaderWriter/ELF/DefaultLayout.h2
-rw-r--r--lld/lib/ReaderWriter/ELF/OutputELFWriter.h2
-rw-r--r--lld/lib/ReaderWriter/ELF/SectionChunks.h3
-rw-r--r--lld/lib/ReaderWriter/ELF/SegmentChunks.h2
-rw-r--r--lld/lib/ReaderWriter/FileArchive.cpp17
-rw-r--r--lld/lib/ReaderWriter/MachO/MachONormalizedFileBinaryWriter.cpp2
-rw-r--r--lld/lib/ReaderWriter/Native/ReaderNative.cpp3
-rw-r--r--lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp11
-rw-r--r--lld/lib/ReaderWriter/PECOFF/WriterPECOFF.cpp2
-rw-r--r--lld/lib/ReaderWriter/Reader.cpp3
-rw-r--r--lld/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp2
12 files changed, 26 insertions, 26 deletions
diff --git a/lld/lib/ReaderWriter/ELF/Chunk.h b/lld/lib/ReaderWriter/ELF/Chunk.h
index f8d3ffbc954..b306a3b291d 100644
--- a/lld/lib/ReaderWriter/ELF/Chunk.h
+++ b/lld/lib/ReaderWriter/ELF/Chunk.h
@@ -12,7 +12,6 @@
#include "lld/Core/LLVM.h"
-#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Object/ELF.h"
#include "llvm/Support/Allocator.h"
@@ -21,6 +20,8 @@
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/FileOutputBuffer.h"
+#include <memory>
+
namespace lld {
class ELFLinkingContext;
diff --git a/lld/lib/ReaderWriter/ELF/DefaultLayout.h b/lld/lib/ReaderWriter/ELF/DefaultLayout.h
index f3dc886a6bc..a6d959a0be9 100644
--- a/lld/lib/ReaderWriter/ELF/DefaultLayout.h
+++ b/lld/lib/ReaderWriter/ELF/DefaultLayout.h
@@ -22,7 +22,6 @@
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/Hashing.h"
-#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringMap.h"
@@ -31,6 +30,7 @@
#include "llvm/Support/Format.h"
#include <map>
+#include <memory>
#include <tuple>
#include <unordered_map>
diff --git a/lld/lib/ReaderWriter/ELF/OutputELFWriter.h b/lld/lib/ReaderWriter/ELF/OutputELFWriter.h
index f20321dcdd8..1d734808a30 100644
--- a/lld/lib/ReaderWriter/ELF/OutputELFWriter.h
+++ b/lld/lib/ReaderWriter/ELF/OutputELFWriter.h
@@ -429,7 +429,7 @@ template <class ELFT> uint64_t OutputELFWriter<ELFT>::outputFileSize() const {
template <class ELFT>
error_code OutputELFWriter<ELFT>::writeOutput(const File &file,
StringRef path) {
- OwningPtr<FileOutputBuffer> buffer;
+ std::unique_ptr<FileOutputBuffer> buffer;
ScopedTask createOutputTask(getDefaultDomain(), "ELF Writer Create Output");
error_code ec = FileOutputBuffer::create(path, outputFileSize(), buffer,
FileOutputBuffer::F_executable);
diff --git a/lld/lib/ReaderWriter/ELF/SectionChunks.h b/lld/lib/ReaderWriter/ELF/SectionChunks.h
index 267dbf4761c..05b96ed5136 100644
--- a/lld/lib/ReaderWriter/ELF/SectionChunks.h
+++ b/lld/lib/ReaderWriter/ELF/SectionChunks.h
@@ -21,7 +21,6 @@
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMap.h"
-#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/Object/ELF.h"
#include "llvm/Support/Allocator.h"
@@ -31,6 +30,8 @@
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/FileOutputBuffer.h"
+#include <memory>
+
namespace lld {
namespace elf {
template <class> class MergedSections;
diff --git a/lld/lib/ReaderWriter/ELF/SegmentChunks.h b/lld/lib/ReaderWriter/ELF/SegmentChunks.h
index 8e47499128b..ee052551b19 100644
--- a/lld/lib/ReaderWriter/ELF/SegmentChunks.h
+++ b/lld/lib/ReaderWriter/ELF/SegmentChunks.h
@@ -19,7 +19,6 @@
#include "lld/ReaderWriter/Writer.h"
#include "llvm/ADT/ArrayRef.h"
-#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Object/ELF.h"
#include "llvm/Support/Allocator.h"
@@ -27,6 +26,7 @@
#include "llvm/Support/ELF.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/FileOutputBuffer.h"
+#include <memory>
namespace lld {
namespace elf {
diff --git a/lld/lib/ReaderWriter/FileArchive.cpp b/lld/lib/ReaderWriter/FileArchive.cpp
index a486ffb9c93..1749ed48d4e 100644
--- a/lld/lib/ReaderWriter/FileArchive.cpp
+++ b/lld/lib/ReaderWriter/FileArchive.cpp
@@ -11,7 +11,6 @@
#include "lld/Core/LLVM.h"
#include "llvm/ADT/Hashing.h"
-#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Object/Archive.h"
#include "llvm/Object/ObjectFile.h"
@@ -19,6 +18,7 @@
#include "llvm/Support/Format.h"
#include "llvm/Support/MemoryBuffer.h"
+#include <memory>
#include <set>
#include <unordered_map>
@@ -51,10 +51,10 @@ public:
return nullptr;
if (dataSymbolOnly) {
- OwningPtr<MemoryBuffer> buff;
+ std::unique_ptr<MemoryBuffer> buff;
if (ci->getMemoryBuffer(buff, true))
return nullptr;
- if (isDataSymbol(buff.take(), name))
+ if (isDataSymbol(std::move(buff), name))
return nullptr;
}
@@ -101,20 +101,19 @@ protected:
error_code
instantiateMember(Archive::child_iterator member,
std::vector<std::unique_ptr<File>> &result) const {
- OwningPtr<MemoryBuffer> buff;
- if (error_code ec = member->getMemoryBuffer(buff, true))
+ std::unique_ptr<MemoryBuffer> mb;
+ if (error_code ec = member->getMemoryBuffer(mb, true))
return ec;
if (_logLoading)
- llvm::outs() << buff->getBufferIdentifier() << "\n";
- std::unique_ptr<MemoryBuffer> mb(buff.take());
+ llvm::outs() << mb->getBufferIdentifier() << "\n";
_registry.parseFile(mb, result);
const char *memberStart = member->getBuffer().data();
_membersInstantiated.insert(memberStart);
return error_code::success();
}
- error_code isDataSymbol(MemoryBuffer *mb, StringRef symbol) const {
- auto objOrErr(ObjectFile::createObjectFile(mb));
+ error_code isDataSymbol(std::unique_ptr<MemoryBuffer> mb, StringRef symbol) const {
+ auto objOrErr(ObjectFile::createObjectFile(mb.release()));
if (auto ec = objOrErr.getError())
return ec;
std::unique_ptr<ObjectFile> obj(objOrErr.get());
diff --git a/lld/lib/ReaderWriter/MachO/MachONormalizedFileBinaryWriter.cpp b/lld/lib/ReaderWriter/MachO/MachONormalizedFileBinaryWriter.cpp
index 7b0b501c3b0..1ffb4294c92 100644
--- a/lld/lib/ReaderWriter/MachO/MachONormalizedFileBinaryWriter.cpp
+++ b/lld/lib/ReaderWriter/MachO/MachONormalizedFileBinaryWriter.cpp
@@ -933,7 +933,7 @@ error_code MachOFileLayout::writeBinary(StringRef path) {
if (_ec)
return _ec;
// Create FileOutputBuffer with calculated size.
- OwningPtr<llvm::FileOutputBuffer> fob;
+ std::unique_ptr<llvm::FileOutputBuffer> fob;
unsigned flags = 0;
if (_file.fileType != llvm::MachO::MH_OBJECT)
flags = llvm::FileOutputBuffer::F_executable;
diff --git a/lld/lib/ReaderWriter/Native/ReaderNative.cpp b/lld/lib/ReaderWriter/Native/ReaderNative.cpp
index b6cd91ae0a7..f338e81ea95 100644
--- a/lld/lib/ReaderWriter/Native/ReaderNative.cpp
+++ b/lld/lib/ReaderWriter/Native/ReaderNative.cpp
@@ -17,7 +17,6 @@
#include "lld/Core/File.h"
#include "llvm/ADT/ArrayRef.h"
-#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
@@ -369,7 +368,7 @@ public:
}
virtual ~File() {
- // _buffer is automatically deleted because of OwningPtr<>
+ // _buffer is automatically deleted because of std::unique_ptr<>
// All other ivar pointers are pointers into the MemoryBuffer, except
// the _definedAtoms array which was allocated to contain an array
diff --git a/lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp b/lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp
index d582e6dd2d5..8898746a78b 100644
--- a/lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp
+++ b/lld/lib/ReaderWriter/PECOFF/ReaderCOFF.cpp
@@ -272,14 +272,14 @@ FileCOFF::FileCOFF(std::unique_ptr<MemoryBuffer> mb, error_code &ec)
auto binaryOrErr = llvm::object::createBinary(mb.release());
if ((ec = binaryOrErr.getError()))
return;
- OwningPtr<llvm::object::Binary> bin(binaryOrErr.get());
+ std::unique_ptr<llvm::object::Binary> bin(binaryOrErr.get());
_obj.reset(dyn_cast<const llvm::object::COFFObjectFile>(bin.get()));
if (!_obj) {
ec = make_error_code(llvm::object::object_error::invalid_file_type);
return;
}
- bin.take();
+ bin.release();
// Read .drectve section if exists.
ArrayRef<uint8_t> directives;
@@ -912,10 +912,9 @@ public:
llvm::FileRemover coffFileRemover(*coffPath);
// Read and parse the COFF
- OwningPtr<MemoryBuffer> opmb;
- if (error_code ec = MemoryBuffer::getFile(*coffPath, opmb))
+ std::unique_ptr<MemoryBuffer> newmb;
+ if (error_code ec = MemoryBuffer::getFile(*coffPath, newmb))
return ec;
- std::unique_ptr<MemoryBuffer> newmb(opmb.take());
error_code ec;
std::unique_ptr<FileCOFF> file(new FileCOFF(std::move(newmb), ec));
if (ec)
@@ -938,7 +937,7 @@ private:
// Write the memory buffer contents to .res file, so that we can run
// cvtres.exe on it.
- OwningPtr<llvm::FileOutputBuffer> buffer;
+ std::unique_ptr<llvm::FileOutputBuffer> buffer;
if (error_code ec = llvm::FileOutputBuffer::create(
tempFilePath.str(), mb->getBufferSize(), buffer))
return ec;
diff --git a/lld/lib/ReaderWriter/PECOFF/WriterPECOFF.cpp b/lld/lib/ReaderWriter/PECOFF/WriterPECOFF.cpp
index 54686c73cd0..6da91958bc3 100644
--- a/lld/lib/ReaderWriter/PECOFF/WriterPECOFF.cpp
+++ b/lld/lib/ReaderWriter/PECOFF/WriterPECOFF.cpp
@@ -1016,7 +1016,7 @@ error_code PECOFFWriter::writeFile(const File &linkedFile, StringRef path) {
}
uint64_t totalSize = _chunks.back()->fileOffset() + _chunks.back()->size();
- OwningPtr<llvm::FileOutputBuffer> buffer;
+ std::unique_ptr<llvm::FileOutputBuffer> buffer;
error_code ec = llvm::FileOutputBuffer::create(
path, totalSize, buffer, llvm::FileOutputBuffer::F_executable);
if (ec)
diff --git a/lld/lib/ReaderWriter/Reader.cpp b/lld/lib/ReaderWriter/Reader.cpp
index 16eb7a0fa4e..54e3dae2c98 100644
--- a/lld/lib/ReaderWriter/Reader.cpp
+++ b/lld/lib/ReaderWriter/Reader.cpp
@@ -9,13 +9,14 @@
#include "lld/ReaderWriter/Reader.h"
-#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/FileUtilities.h"
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/system_error.h"
+#include <memory>
+
namespace lld {
Reader::~Reader() {
diff --git a/lld/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp b/lld/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp
index 0a01d41aa95..fe3cffdafe4 100644
--- a/lld/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp
+++ b/lld/lib/ReaderWriter/YAML/ReaderWriterYAML.cpp
@@ -20,7 +20,6 @@
#include "lld/Core/Reference.h"
#include "llvm/ADT/ArrayRef.h"
-#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/ADT/Twine.h"
#include "llvm/Support/Debug.h"
@@ -31,6 +30,7 @@
#include "llvm/Support/raw_ostream.h"
#include "llvm/Support/system_error.h"
+#include <memory>
#include <string>
using llvm::yaml::MappingTraits;
OpenPOWER on IntegriCloud