diff options
| author | skrll <skrll@NetBSD.org> | 2016-10-09 08:21:35 +0000 |
|---|---|---|
| committer | skrll <skrll@NetBSD.org> | 2016-10-09 08:21:35 +0000 |
| commit | 97e68488417ad4dbbf4a72ac74c588f7a9e61334 (patch) | |
| tree | d98b2934caaaa41f787ee7450dc643f6a49f4bed /external/gpl3/binutils.old/dist/elfcpp/elfcpp_internal.h | |
| parent | f351ad177675c5fc2e5ba4638f024d36da9cb146 (diff) | |
Remove binutils.old now it is no longer used
Diffstat (limited to 'external/gpl3/binutils.old/dist/elfcpp/elfcpp_internal.h')
| -rw-r--r-- | external/gpl3/binutils.old/dist/elfcpp/elfcpp_internal.h | 240 |
1 files changed, 0 insertions, 240 deletions
diff --git a/external/gpl3/binutils.old/dist/elfcpp/elfcpp_internal.h b/external/gpl3/binutils.old/dist/elfcpp/elfcpp_internal.h deleted file mode 100644 index df84e7e765b..00000000000 --- a/external/gpl3/binutils.old/dist/elfcpp/elfcpp_internal.h +++ /dev/null @@ -1,240 +0,0 @@ -// elfcpp_internal.h -- internals for elfcpp -*- C++ -*- - -// Copyright 2006, 2007, Free Software Foundation, Inc. -// Written by Ian Lance Taylor <iant@google.com>. - -// This file is part of elfcpp. - -// This program is free software; you can redistribute it and/or -// modify it under the terms of the GNU Library General Public License -// as published by the Free Software Foundation; either version 2, or -// (at your option) any later version. - -// In addition to the permissions in the GNU Library General Public -// License, the Free Software Foundation gives you unlimited -// permission to link the compiled version of this file into -// combinations with other programs, and to distribute those -// combinations without any restriction coming from the use of this -// file. (The Library Public License restrictions do apply in other -// respects; for example, they cover modification of the file, and -/// distribution when not linked into a combined executable.) - -// This program is distributed in the hope that it will be useful, but -// WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Library General Public License for more details. - -// You should have received a copy of the GNU Library General Public -// License along with this program; if not, write to the Free Software -// Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA -// 02110-1301, USA. - -// This is included by elfcpp.h, the external interface, but holds -// information which we want to keep private. - -#ifndef ELFCPP_INTERNAL_H -#define ELFCPP_INTERNAL_H - -namespace elfcpp -{ - -namespace internal -{ - -// The ELF file header. - -template<int size> -struct Ehdr_data -{ - unsigned char e_ident[EI_NIDENT]; - Elf_Half e_type; - Elf_Half e_machine; - Elf_Word e_version; - typename Elf_types<size>::Elf_Addr e_entry; - typename Elf_types<size>::Elf_Off e_phoff; - typename Elf_types<size>::Elf_Off e_shoff; - Elf_Word e_flags; - Elf_Half e_ehsize; - Elf_Half e_phentsize; - Elf_Half e_phnum; - Elf_Half e_shentsize; - Elf_Half e_shnum; - Elf_Half e_shstrndx; -}; - -// An ELF section header. - -template<int size> -struct Shdr_data -{ - Elf_Word sh_name; - Elf_Word sh_type; - typename Elf_types<size>::Elf_WXword sh_flags; - typename Elf_types<size>::Elf_Addr sh_addr; - typename Elf_types<size>::Elf_Off sh_offset; - typename Elf_types<size>::Elf_WXword sh_size; - Elf_Word sh_link; - Elf_Word sh_info; - typename Elf_types<size>::Elf_WXword sh_addralign; - typename Elf_types<size>::Elf_WXword sh_entsize; -}; - -// An ELF segment header. We use template specialization for the -// 32-bit and 64-bit versions because the fields are in a different -// order. - -template<int size> -struct Phdr_data; - -template<> -struct Phdr_data<32> -{ - Elf_Word p_type; - Elf_types<32>::Elf_Off p_offset; - Elf_types<32>::Elf_Addr p_vaddr; - Elf_types<32>::Elf_Addr p_paddr; - Elf_Word p_filesz; - Elf_Word p_memsz; - Elf_Word p_flags; - Elf_Word p_align; -}; - -template<> -struct Phdr_data<64> -{ - Elf_Word p_type; - Elf_Word p_flags; - Elf_types<64>::Elf_Off p_offset; - Elf_types<64>::Elf_Addr p_vaddr; - Elf_types<64>::Elf_Addr p_paddr; - Elf_Xword p_filesz; - Elf_Xword p_memsz; - Elf_Xword p_align; -}; - -// An ELF symbol table entry. We use template specialization for the -// 32-bit and 64-bit versions because the fields are in a different -// order. - -template<int size> -struct Sym_data; - -template<> -struct Sym_data<32> -{ - Elf_Word st_name; - Elf_types<32>::Elf_Addr st_value; - Elf_Word st_size; - unsigned char st_info; - unsigned char st_other; - Elf_Half st_shndx; -}; - -template<> -struct Sym_data<64> -{ - Elf_Word st_name; - unsigned char st_info; - unsigned char st_other; - Elf_Half st_shndx; - Elf_types<64>::Elf_Addr st_value; - Elf_Xword st_size; -}; - -// ELF relocation table entries. - -template<int size> -struct Rel_data -{ - typename Elf_types<size>::Elf_Addr r_offset; - typename Elf_types<size>::Elf_WXword r_info; -}; - -template<int size> -struct Rela_data -{ - typename Elf_types<size>::Elf_Addr r_offset; - typename Elf_types<size>::Elf_WXword r_info; - typename Elf_types<size>::Elf_Swxword r_addend; -}; - -// An entry in the ELF SHT_DYNAMIC section aka PT_DYNAMIC segment. - -template<int size> -struct Dyn_data -{ - typename Elf_types<size>::Elf_Swxword d_tag; - typename Elf_types<size>::Elf_WXword d_val; -}; - -// An entry in a SHT_GNU_verdef section. This structure is the same -// in 32-bit and 64-bit ELF files. - -struct Verdef_data -{ - // Version number of structure (VER_DEF_*). - Elf_Half vd_version; - // Bit flags (VER_FLG_*). - Elf_Half vd_flags; - // Version index. - Elf_Half vd_ndx; - // Number of auxiliary Verdaux entries. - Elf_Half vd_cnt; - // Hash of name. - Elf_Word vd_hash; - // Byte offset to first Verdaux entry. - Elf_Word vd_aux; - // Byte offset to next Verdef entry. - Elf_Word vd_next; -}; - -// An auxiliary entry in a SHT_GNU_verdef section. This structure is -// the same in 32-bit and 64-bit ELF files. - -struct Verdaux_data -{ - // Offset in string table of version name. - Elf_Word vda_name; - // Byte offset to next Verdaux entry. - Elf_Word vda_next; -}; - -// An entry in a SHT_GNU_verneed section. This structure is the same -// in 32-bit and 64-bit ELF files. - -struct Verneed_data -{ - // Version number of structure (VER_NEED_*). - Elf_Half vn_version; - // Number of auxiliary Vernaux entries. - Elf_Half vn_cnt; - // Offset in string table of library name. - Elf_Word vn_file; - // Byte offset to first Vernaux entry. - Elf_Word vn_aux; - // Byt eoffset to next Verneed entry. - Elf_Word vn_next; -}; - -// An auxiliary entry in a SHT_GNU_verneed section. This structure is -// the same in 32-bit and 64-bit ELF files. - -struct Vernaux_data -{ - // Hash of dependency name. - Elf_Word vna_hash; - // Bit flags (VER_FLG_*). - Elf_Half vna_flags; - // Version index used in SHT_GNU_versym entries. - Elf_Half vna_other; - // Offset in string table of version name. - Elf_Word vna_name; - // Byte offset to next Vernaux entry. - Elf_Word vna_next; -}; - -} // End namespace internal. - -} // End namespace elfcpp. - -#endif // !defined(ELFCPP_INTERNAL_H) |
