diff options
author | David Srbecky <dsrbecky@google.com> | 2015-04-22 12:20:22 +0100 |
---|---|---|
committer | David Srbecky <dsrbecky@google.com> | 2015-04-22 16:56:23 +0100 |
commit | 533c207f9d2da6d913c4b10f6f757fe9d6367b10 (patch) | |
tree | 1e2c1bf5c91898e785398a3d66e7e7570e8b29db /compiler/elf_writer_quick.h | |
parent | 8d1ba74fe48703fc2b5a5920dd5eea0c65db5b15 (diff) | |
download | android_art-533c207f9d2da6d913c4b10f6f757fe9d6367b10.tar.gz android_art-533c207f9d2da6d913c4b10f6f757fe9d6367b10.tar.bz2 android_art-533c207f9d2da6d913c4b10f6f757fe9d6367b10.zip |
Simplify template parameters of Elf classes.
The ELF specification defines several types which differ between
32-bit ELF and 64-bit ELF. We used to template all ELF-related
methods on all of those types which was very verbose.
This CL wraps all the types as typedefs in ElfTypes32 and ElfTypes64.
One of those wrappers is then used as the template parameter.
Change-Id: I65247c2c79d92a7c4799e988cf3e4a1b10eb4788
Diffstat (limited to 'compiler/elf_writer_quick.h')
-rw-r--r-- | compiler/elf_writer_quick.h | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/compiler/elf_writer_quick.h b/compiler/elf_writer_quick.h index 811beb44d2..955b5684e7 100644 --- a/compiler/elf_writer_quick.h +++ b/compiler/elf_writer_quick.h @@ -23,9 +23,7 @@ namespace art { -template <typename Elf_Word, typename Elf_Sword, typename Elf_Addr, - typename Elf_Dyn, typename Elf_Sym, typename Elf_Ehdr, - typename Elf_Phdr, typename Elf_Shdr> +template <typename ElfTypes> class ElfWriterQuick FINAL : public ElfWriter { public: // Write an ELF file. Returns true on success, false on failure. @@ -57,10 +55,8 @@ class ElfWriterQuick FINAL : public ElfWriter { }; // Explicitly instantiated in elf_writer_quick.cc -typedef ElfWriterQuick<Elf32_Word, Elf32_Sword, Elf32_Addr, Elf32_Dyn, - Elf32_Sym, Elf32_Ehdr, Elf32_Phdr, Elf32_Shdr> ElfWriterQuick32; -typedef ElfWriterQuick<Elf64_Word, Elf64_Sword, Elf64_Addr, Elf64_Dyn, - Elf64_Sym, Elf64_Ehdr, Elf64_Phdr, Elf64_Shdr> ElfWriterQuick64; +typedef ElfWriterQuick<ElfTypes32> ElfWriterQuick32; +typedef ElfWriterQuick<ElfTypes64> ElfWriterQuick64; } // namespace art |