From f4ccd110750a3f3fe6a107d5c74c649c2a0dc407 Mon Sep 17 00:00:00 2001 From: Ahmed Charles Date: Thu, 6 Mar 2014 05:51:42 +0000 Subject: Replace OwningPtr with std::unique_ptr. This compiles with no changes to clang/lld/lldb with MSVC and includes overloads to various functions which are used by those projects and llvm which have OwningPtr's as parameters. This should allow out of tree projects some time to move. There are also no changes to libs/Target, which should help out of tree targets have time to move, if necessary. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203083 91177308-0d34-0410-b5e6-96231b3b80d8 --- tools/llvm-readobj/COFFDumper.cpp | 5 ++--- tools/llvm-readobj/ELFDumper.cpp | 7 +++---- tools/llvm-readobj/MachODumper.cpp | 4 ++-- tools/llvm-readobj/ObjDumper.h | 19 ++++++++----------- tools/llvm-readobj/llvm-readobj.cpp | 11 +++++------ 5 files changed, 20 insertions(+), 26 deletions(-) (limited to 'tools/llvm-readobj') diff --git a/tools/llvm-readobj/COFFDumper.cpp b/tools/llvm-readobj/COFFDumper.cpp index 2c8afdfbb7..c33af18fe9 100644 --- a/tools/llvm-readobj/COFFDumper.cpp +++ b/tools/llvm-readobj/COFFDumper.cpp @@ -104,9 +104,8 @@ private: namespace llvm { -error_code createCOFFDumper(const object::ObjectFile *Obj, - StreamWriter& Writer, - OwningPtr &Result) { +error_code createCOFFDumper(const object::ObjectFile *Obj, StreamWriter &Writer, + std::unique_ptr &Result) { const COFFObjectFile *COFFObj = dyn_cast(Obj); if (!COFFObj) return readobj_error::unsupported_obj_file_format; diff --git a/tools/llvm-readobj/ELFDumper.cpp b/tools/llvm-readobj/ELFDumper.cpp index adab38fef6..cc51089afd 100644 --- a/tools/llvm-readobj/ELFDumper.cpp +++ b/tools/llvm-readobj/ELFDumper.cpp @@ -83,14 +83,13 @@ namespace llvm { template static error_code createELFDumper(const ELFFile *Obj, StreamWriter &Writer, - OwningPtr &Result) { + std::unique_ptr &Result) { Result.reset(new ELFDumper(Obj, Writer)); return readobj_error::success; } -error_code createELFDumper(const object::ObjectFile *Obj, - StreamWriter& Writer, - OwningPtr &Result) { +error_code createELFDumper(const object::ObjectFile *Obj, StreamWriter &Writer, + std::unique_ptr &Result) { // Little-endian 32-bit if (const ELF32LEObjectFile *ELFObj = dyn_cast(Obj)) return createELFDumper(ELFObj->getELFFile(), Writer, Result); diff --git a/tools/llvm-readobj/MachODumper.cpp b/tools/llvm-readobj/MachODumper.cpp index 6ff817c25c..1631777423 100644 --- a/tools/llvm-readobj/MachODumper.cpp +++ b/tools/llvm-readobj/MachODumper.cpp @@ -56,8 +56,8 @@ private: namespace llvm { error_code createMachODumper(const object::ObjectFile *Obj, - StreamWriter& Writer, - OwningPtr &Result) { + StreamWriter &Writer, + std::unique_ptr &Result) { const MachOObjectFile *MachOObj = dyn_cast(Obj); if (!MachOObj) return readobj_error::unsupported_obj_file_format; diff --git a/tools/llvm-readobj/ObjDumper.h b/tools/llvm-readobj/ObjDumper.h index 64bab05632..9e0fd2f990 100644 --- a/tools/llvm-readobj/ObjDumper.h +++ b/tools/llvm-readobj/ObjDumper.h @@ -10,6 +10,8 @@ #ifndef LLVM_READOBJ_OBJDUMPER_H #define LLVM_READOBJ_OBJDUMPER_H +#include + namespace llvm { namespace object { @@ -18,9 +20,6 @@ namespace object { class error_code; -template -class OwningPtr; - class StreamWriter; class ObjDumper { @@ -47,17 +46,15 @@ protected: StreamWriter& W; }; -error_code createCOFFDumper(const object::ObjectFile *Obj, - StreamWriter& Writer, - OwningPtr &Result); +error_code createCOFFDumper(const object::ObjectFile *Obj, StreamWriter &Writer, + std::unique_ptr &Result); -error_code createELFDumper(const object::ObjectFile *Obj, - StreamWriter& Writer, - OwningPtr &Result); +error_code createELFDumper(const object::ObjectFile *Obj, StreamWriter &Writer, + std::unique_ptr &Result); error_code createMachODumper(const object::ObjectFile *Obj, - StreamWriter& Writer, - OwningPtr &Result); + StreamWriter &Writer, + std::unique_ptr &Result); } // namespace llvm diff --git a/tools/llvm-readobj/llvm-readobj.cpp b/tools/llvm-readobj/llvm-readobj.cpp index 56f60114fe..5be959f85c 100644 --- a/tools/llvm-readobj/llvm-readobj.cpp +++ b/tools/llvm-readobj/llvm-readobj.cpp @@ -179,9 +179,8 @@ static void reportError(StringRef Input, StringRef Message) { } /// @brief Creates an format-specific object file dumper. -static error_code createDumper(const ObjectFile *Obj, - StreamWriter &Writer, - OwningPtr &Result) { +static error_code createDumper(const ObjectFile *Obj, StreamWriter &Writer, + std::unique_ptr &Result) { if (!Obj) return readobj_error::unsupported_file_format; @@ -199,7 +198,7 @@ static error_code createDumper(const ObjectFile *Obj, /// @brief Dumps the specified object file. static void dumpObject(const ObjectFile *Obj) { StreamWriter Writer(outs()); - OwningPtr Dumper; + std::unique_ptr Dumper; if (error_code EC = createDumper(Obj, Writer, Dumper)) { reportError(Obj->getFileName(), EC); return; @@ -244,7 +243,7 @@ static void dumpArchive(const Archive *Arc) { for (Archive::child_iterator ArcI = Arc->child_begin(), ArcE = Arc->child_end(); ArcI != ArcE; ++ArcI) { - OwningPtr child; + std::unique_ptr child; if (error_code EC = ArcI->getAsBinary(child)) { // Ignore non-object files. if (EC != object_error::invalid_file_type) @@ -274,7 +273,7 @@ static void dumpInput(StringRef File) { reportError(File, EC); return; } - OwningPtr Binary(BinaryOrErr.get()); + std::unique_ptr Binary(BinaryOrErr.get()); if (Archive *Arc = dyn_cast(Binary.get())) dumpArchive(Arc); -- cgit v1.2.3