From d97b9d89990d9865cf8df2939c73f36bef72700f Mon Sep 17 00:00:00 2001 From: Rui Ueyama Date: Thu, 26 Mar 2015 21:01:13 +0000 Subject: [PATCH] Remove duplicate code and empty classes. llvm-svn: 233316 --- .../ReaderWriter/ELF/AArch64/AArch64ELFFile.h | 6 ------ .../ELF/AArch64/AArch64ELFReader.h | 15 ++------------- lld/lib/ReaderWriter/ELF/ARM/ARMELFFile.h | 6 ------ lld/lib/ReaderWriter/ELF/ARM/ARMELFReader.h | 16 ++-------------- lld/lib/ReaderWriter/ELF/ELFReader.h | 18 ++++++++++++++---- .../ReaderWriter/ELF/Hexagon/HexagonELFFile.h | 6 ------ .../ELF/Hexagon/HexagonELFReader.h | 15 ++------------- lld/lib/ReaderWriter/ELF/Mips/MipsELFFile.h | 6 ------ lld/lib/ReaderWriter/ELF/Mips/MipsELFReader.h | 17 ++--------------- lld/lib/ReaderWriter/ELF/X86/X86ELFFile.h | 6 ------ lld/lib/ReaderWriter/ELF/X86/X86ELFReader.h | 15 ++------------- .../ReaderWriter/ELF/X86_64/X86_64ELFFile.h | 6 ------ .../ReaderWriter/ELF/X86_64/X86_64ELFReader.h | 15 ++------------- 13 files changed, 26 insertions(+), 121 deletions(-) diff --git a/lld/lib/ReaderWriter/ELF/AArch64/AArch64ELFFile.h b/lld/lib/ReaderWriter/ELF/AArch64/AArch64ELFFile.h index 9d5207c1c4b4..6bf856ff7936 100644 --- a/lld/lib/ReaderWriter/ELF/AArch64/AArch64ELFFile.h +++ b/lld/lib/ReaderWriter/ELF/AArch64/AArch64ELFFile.h @@ -29,12 +29,6 @@ public: } }; -template class AArch64DynamicFile : public DynamicFile { -public: - AArch64DynamicFile(const AArch64LinkingContext &context, StringRef name) - : DynamicFile(context, name) {} -}; - } // elf } // lld diff --git a/lld/lib/ReaderWriter/ELF/AArch64/AArch64ELFReader.h b/lld/lib/ReaderWriter/ELF/AArch64/AArch64ELFReader.h index 05f312db3e7b..baeb9c1d4ca5 100644 --- a/lld/lib/ReaderWriter/ELF/AArch64/AArch64ELFReader.h +++ b/lld/lib/ReaderWriter/ELF/AArch64/AArch64ELFReader.h @@ -18,16 +18,6 @@ namespace elf { typedef llvm::object::ELFType AArch64ELFType; -struct AArch64DynamicFileCreateELFTraits { - typedef llvm::ErrorOr> result_type; - - template - static result_type create(std::unique_ptr mb, - AArch64LinkingContext &ctx) { - return lld::elf::AArch64DynamicFile::create(std::move(mb), ctx); - } -}; - struct AArch64ELFFileCreateELFTraits { typedef llvm::ErrorOr> result_type; @@ -48,11 +38,10 @@ public: }; class AArch64ELFDSOReader - : public ELFDSOReader { + : public ELFDSOReader { public: AArch64ELFDSOReader(AArch64LinkingContext &ctx) - : ELFDSOReader(ctx, llvm::ELF::EM_AARCH64) {} }; diff --git a/lld/lib/ReaderWriter/ELF/ARM/ARMELFFile.h b/lld/lib/ReaderWriter/ELF/ARM/ARMELFFile.h index de7fc1a313ef..191b750f17dc 100644 --- a/lld/lib/ReaderWriter/ELF/ARM/ARMELFFile.h +++ b/lld/lib/ReaderWriter/ELF/ARM/ARMELFFile.h @@ -121,12 +121,6 @@ private: } }; -template class ARMDynamicFile : public DynamicFile { -public: - ARMDynamicFile(const ARMLinkingContext &context, StringRef name) - : DynamicFile(context, name) {} -}; - } // elf } // lld diff --git a/lld/lib/ReaderWriter/ELF/ARM/ARMELFReader.h b/lld/lib/ReaderWriter/ELF/ARM/ARMELFReader.h index 31af531563ea..5b5c0a0fc5c5 100644 --- a/lld/lib/ReaderWriter/ELF/ARM/ARMELFReader.h +++ b/lld/lib/ReaderWriter/ELF/ARM/ARMELFReader.h @@ -18,16 +18,6 @@ namespace elf { typedef llvm::object::ELFType ARMELFType; -struct ARMDynamicFileCreateELFTraits { - typedef llvm::ErrorOr> result_type; - - template - static result_type create(std::unique_ptr mb, - ARMLinkingContext &ctx) { - return lld::elf::ARMDynamicFile::create(std::move(mb), ctx); - } -}; - struct ARMELFFileCreateELFTraits { typedef llvm::ErrorOr> result_type; @@ -48,12 +38,10 @@ public: }; class ARMELFDSOReader - : public ELFDSOReader { + : public ELFDSOReader { public: ARMELFDSOReader(ARMLinkingContext &ctx) - : ELFDSOReader(ctx, llvm::ELF::EM_ARM) {} + : ELFDSOReader(ctx, llvm::ELF::EM_ARM) {} }; } // namespace elf diff --git a/lld/lib/ReaderWriter/ELF/ELFReader.h b/lld/lib/ReaderWriter/ELF/ELFReader.h index 43f218115c66..8d06dc317252 100644 --- a/lld/lib/ReaderWriter/ELF/ELFReader.h +++ b/lld/lib/ReaderWriter/ELF/ELFReader.h @@ -57,7 +57,17 @@ protected: uint64_t _machine; }; -template +struct DynamicFileCreateELFTraits { + typedef llvm::ErrorOr> result_type; + + template + static result_type create(std::unique_ptr mb, + ContextT &ctx) { + return DynamicFile::create(std::move(mb), ctx); + } +}; + +template class ELFDSOReader : public Reader { public: typedef llvm::object::Elf_Ehdr_Impl Elf_Ehdr; @@ -76,9 +86,9 @@ public: std::vector> &result) const override { std::size_t maxAlignment = 1ULL << llvm::countTrailingZeros(uintptr_t(mb->getBufferStart())); - auto f = - createELF(llvm::object::getElfArchType(mb->getBuffer()), - maxAlignment, std::move(mb), _ctx); + auto f = createELF( + llvm::object::getElfArchType(mb->getBuffer()), + maxAlignment, std::move(mb), _ctx); if (std::error_code ec = f.getError()) return ec; result.push_back(std::move(*f)); diff --git a/lld/lib/ReaderWriter/ELF/Hexagon/HexagonELFFile.h b/lld/lib/ReaderWriter/ELF/Hexagon/HexagonELFFile.h index 21f62fd54dc8..d251ca4fa0aa 100644 --- a/lld/lib/ReaderWriter/ELF/Hexagon/HexagonELFFile.h +++ b/lld/lib/ReaderWriter/ELF/Hexagon/HexagonELFFile.h @@ -153,12 +153,6 @@ public: } }; -template class HexagonDynamicFile : public DynamicFile { -public: - HexagonDynamicFile(const HexagonLinkingContext &context, StringRef name) - : DynamicFile(context, name) {} -}; - } // elf } // lld diff --git a/lld/lib/ReaderWriter/ELF/Hexagon/HexagonELFReader.h b/lld/lib/ReaderWriter/ELF/Hexagon/HexagonELFReader.h index 1a4f891df799..fe09b0fba794 100644 --- a/lld/lib/ReaderWriter/ELF/Hexagon/HexagonELFReader.h +++ b/lld/lib/ReaderWriter/ELF/Hexagon/HexagonELFReader.h @@ -18,16 +18,6 @@ namespace elf { typedef llvm::object::ELFType HexagonELFType; -struct HexagonDynamicFileCreateELFTraits { - typedef llvm::ErrorOr> result_type; - - template - static result_type create(std::unique_ptr mb, - HexagonLinkingContext &ctx) { - return lld::elf::HexagonDynamicFile::create(std::move(mb), ctx); - } -}; - struct HexagonELFFileCreateELFTraits { typedef llvm::ErrorOr> result_type; @@ -48,11 +38,10 @@ public: }; class HexagonELFDSOReader - : public ELFDSOReader { + : public ELFDSOReader { public: HexagonELFDSOReader(HexagonLinkingContext &ctx) - : ELFDSOReader(ctx, llvm::ELF::EM_HEXAGON) {} }; diff --git a/lld/lib/ReaderWriter/ELF/Mips/MipsELFFile.h b/lld/lib/ReaderWriter/ELF/Mips/MipsELFFile.h index 0b8df1cc9654..1a0e2879dc40 100644 --- a/lld/lib/ReaderWriter/ELF/Mips/MipsELFFile.h +++ b/lld/lib/ReaderWriter/ELF/Mips/MipsELFFile.h @@ -323,12 +323,6 @@ private: } }; -template class MipsDynamicFile : public DynamicFile { -public: - MipsDynamicFile(const MipsLinkingContext &context, StringRef name) - : DynamicFile(context, name) {} -}; - } // elf } // lld diff --git a/lld/lib/ReaderWriter/ELF/Mips/MipsELFReader.h b/lld/lib/ReaderWriter/ELF/Mips/MipsELFReader.h index 8b325b38bb52..c9827e0e40f6 100644 --- a/lld/lib/ReaderWriter/ELF/Mips/MipsELFReader.h +++ b/lld/lib/ReaderWriter/ELF/Mips/MipsELFReader.h @@ -27,16 +27,6 @@ struct MipsELFFileCreateTraits { } }; -struct MipsDynamicFileCreateELFTraits { - typedef llvm::ErrorOr> result_type; - - template - static result_type create(std::unique_ptr mb, - MipsLinkingContext &ctx) { - return lld::elf::MipsDynamicFile::create(std::move(mb), ctx); - } -}; - template class MipsELFObjectReader : public ELFObjectReader -class MipsELFDSOReader - : public ELFDSOReader { - typedef ELFDSOReader - BaseReaderType; +class MipsELFDSOReader : public ELFDSOReader { + typedef ELFDSOReader BaseReaderType; public: MipsELFDSOReader(MipsLinkingContext &ctx) diff --git a/lld/lib/ReaderWriter/ELF/X86/X86ELFFile.h b/lld/lib/ReaderWriter/ELF/X86/X86ELFFile.h index 621c38c43505..b081506eb7ea 100644 --- a/lld/lib/ReaderWriter/ELF/X86/X86ELFFile.h +++ b/lld/lib/ReaderWriter/ELF/X86/X86ELFFile.h @@ -29,12 +29,6 @@ public: } }; -template class X86DynamicFile : public DynamicFile { -public: - X86DynamicFile(const X86LinkingContext &context, StringRef name) - : DynamicFile(context, name) {} -}; - } // elf } // lld diff --git a/lld/lib/ReaderWriter/ELF/X86/X86ELFReader.h b/lld/lib/ReaderWriter/ELF/X86/X86ELFReader.h index 96186c5eb024..b0783a2a4f03 100644 --- a/lld/lib/ReaderWriter/ELF/X86/X86ELFReader.h +++ b/lld/lib/ReaderWriter/ELF/X86/X86ELFReader.h @@ -18,16 +18,6 @@ namespace elf { typedef llvm::object::ELFType X86ELFType; -struct X86DynamicFileCreateELFTraits { - typedef llvm::ErrorOr> result_type; - - template - static result_type create(std::unique_ptr mb, - X86LinkingContext &ctx) { - return lld::elf::X86DynamicFile::create(std::move(mb), ctx); - } -}; - struct X86ELFFileCreateELFTraits { typedef llvm::ErrorOr> result_type; @@ -48,11 +38,10 @@ public: }; class X86ELFDSOReader - : public ELFDSOReader { + : public ELFDSOReader { public: X86ELFDSOReader(X86LinkingContext &ctx) - : ELFDSOReader(ctx, llvm::ELF::EM_386) {} }; diff --git a/lld/lib/ReaderWriter/ELF/X86_64/X86_64ELFFile.h b/lld/lib/ReaderWriter/ELF/X86_64/X86_64ELFFile.h index d43840a63e7e..8e983e21e88b 100644 --- a/lld/lib/ReaderWriter/ELF/X86_64/X86_64ELFFile.h +++ b/lld/lib/ReaderWriter/ELF/X86_64/X86_64ELFFile.h @@ -29,12 +29,6 @@ public: } }; -template class X86_64DynamicFile : public DynamicFile { -public: - X86_64DynamicFile(const X86_64LinkingContext &context, StringRef name) - : DynamicFile(context, name) {} -}; - } // elf } // lld diff --git a/lld/lib/ReaderWriter/ELF/X86_64/X86_64ELFReader.h b/lld/lib/ReaderWriter/ELF/X86_64/X86_64ELFReader.h index 9b1284c6dfa8..a04e69e5e584 100644 --- a/lld/lib/ReaderWriter/ELF/X86_64/X86_64ELFReader.h +++ b/lld/lib/ReaderWriter/ELF/X86_64/X86_64ELFReader.h @@ -18,16 +18,6 @@ namespace elf { typedef llvm::object::ELFType X86_64ELFType; -struct X86_64DynamicFileCreateELFTraits { - typedef llvm::ErrorOr> result_type; - - template - static result_type create(std::unique_ptr mb, - X86_64LinkingContext &ctx) { - return lld::elf::X86_64DynamicFile::create(std::move(mb), ctx); - } -}; - struct X86_64ELFFileCreateELFTraits { typedef llvm::ErrorOr> result_type; @@ -48,11 +38,10 @@ public: }; class X86_64ELFDSOReader - : public ELFDSOReader { + : public ELFDSOReader { public: X86_64ELFDSOReader(X86_64LinkingContext &ctx) - : ELFDSOReader(ctx, llvm::ELF::EM_X86_64) {} };