Lines Matching defs:ehdr

76     GElf_Ehdr ehdr;
77 if (gelf_getehdr(elf, &ehdr) == 0) {
85 if (ehdr.e_machine == EM_SPARC64 ||
86 (ehdr.e_machine == EM_SPARC &&
87 ehdr.e_ident[EI_CLASS] == ELFCLASS64) ||
88 ehdr.e_machine == EM_SPARCV9) {
90 } else if (ehdr.e_machine == EM_SPARC32PLUS ||
91 (ehdr.e_machine == EM_SPARC &&
92 ehdr.e_ident[EI_CLASS] == ELFCLASS32)) {
94 } else if (ehdr.e_machine == EM_MIPS &&
95 ehdr.e_ident[EI_CLASS] == ELFCLASS32) {
97 if (ehdr.e_ident[EI_DATA] != ELFDATA2LSB) {
102 } else if (ehdr.e_machine == EM_X86_64 &&
103 ehdr.e_ident[EI_CLASS] == ELFCLASS64) {
105 } else if (ehdr.e_machine == EM_386 &&
106 ehdr.e_ident[EI_CLASS] == ELFCLASS32) {
108 } else if (ehdr.e_machine == EM_ARM &&
109 ehdr.e_ident[EI_CLASS] == ELFCLASS32) {
110 arch = bits(ehdr.e_entry, 0) ? Thumb : Arm;
111 } else if (ehdr.e_machine == EM_AARCH64 &&
112 ehdr.e_ident[EI_CLASS] == ELFCLASS64) {
114 } else if (ehdr.e_machine == EM_RISCV) {
115 arch = (ehdr.e_ident[EI_CLASS] == ELFCLASS64) ? Riscv64 : Riscv32;
116 } else if (ehdr.e_machine == EM_PPC &&
117 ehdr.e_ident[EI_CLASS] == ELFCLASS32) {
119 if (ehdr.e_ident[EI_DATA] != ELFDATA2MSB) {
124 } else if (ehdr.e_machine == EM_PPC64) {
128 } else if (ehdr.e_ident[EI_CLASS] == ELFCLASS64) {
134 warn("Unknown architecture: %d\n", ehdr.e_machine);
140 switch (ehdr.e_ident[EI_OSABI]) {
173 char *e_str = elf_strptr(elf, ehdr.e_shstrndx, shdr.sh_name);
183 bool is_le = ehdr.e_ident[EI_DATA] == ELFDATA2LSB;
212 result->_programHeaderCount = ehdr.e_phnum;
214 result->_programHeaderSize = ehdr.e_phentsize;
221 uint64_t e_phoff = ehdr.e_phoff;
236 for (int i = 0; i < ehdr.e_phnum; i++) {
289 GElf_Ehdr ehdr;
290 if (gelf_getehdr(elf, &ehdr) ==0) {
294 entry = ehdr.e_entry;
314 char *sec_name = elf_strptr(elf, ehdr.e_shstrndx, shdr.sh_name);
338 for (int i = 0; i < ehdr.e_phnum; ++i) {
533 GElf_Ehdr ehdr;
534 if (gelf_getehdr(elf, &ehdr) ==0) {
546 sectionNames.insert(elf_strptr(elf, ehdr.e_shstrndx, shdr.sh_name));