Lines Matching refs:sechdrs
69 u64 module_emit_plt_entry(struct module *mod, Elf64_Shdr *sechdrs, in module_emit_plt_entry() argument
75 struct plt_entry *plt = (struct plt_entry *)sechdrs[pltsec->plt_shndx].sh_addr; in module_emit_plt_entry()
101 u64 module_emit_veneer_for_adrp(struct module *mod, Elf64_Shdr *sechdrs, in module_emit_veneer_for_adrp() argument
106 struct plt_entry *plt = (struct plt_entry *)sechdrs[pltsec->plt_shndx].sh_addr; in module_emit_veneer_for_adrp()
287 int module_frob_arch_sections(Elf_Ehdr *ehdr, Elf_Shdr *sechdrs, in module_frob_arch_sections() argument
301 if (!strcmp(secstrings + sechdrs[i].sh_name, ".plt")) in module_frob_arch_sections()
303 else if (!strcmp(secstrings + sechdrs[i].sh_name, ".init.plt")) in module_frob_arch_sections()
305 else if (!strcmp(secstrings + sechdrs[i].sh_name, in module_frob_arch_sections()
307 tramp = sechdrs + i; in module_frob_arch_sections()
308 else if (sechdrs[i].sh_type == SHT_SYMTAB) in module_frob_arch_sections()
309 syms = (Elf64_Sym *)sechdrs[i].sh_addr; in module_frob_arch_sections()
322 Elf64_Rela *rels = (void *)ehdr + sechdrs[i].sh_offset; in module_frob_arch_sections()
323 int nents, numrels = sechdrs[i].sh_size / sizeof(Elf64_Rela); in module_frob_arch_sections()
324 Elf64_Shdr *dstsec = sechdrs + sechdrs[i].sh_info; in module_frob_arch_sections()
326 if (sechdrs[i].sh_type != SHT_RELA) in module_frob_arch_sections()
338 sechdrs[i].sh_info); in module_frob_arch_sections()
344 sechdrs[i].sh_info, dstsec); in module_frob_arch_sections()
347 sechdrs[i].sh_info, dstsec); in module_frob_arch_sections()
350 pltsec = sechdrs + mod->arch.core.plt_shndx; in module_frob_arch_sections()
358 pltsec = sechdrs + mod->arch.init.plt_shndx; in module_frob_arch_sections()