Lines Matching refs:shdr

838 link_elf_locate_exidx(linker_file_t lf, Elf_Shdr *shdr, int nhdr)  in link_elf_locate_exidx()  argument
843 if (shdr[i].sh_type == SHT_ARM_EXIDX) { in link_elf_locate_exidx()
844 lf->exidx_addr = shdr[i].sh_addr + lf->address; in link_elf_locate_exidx()
845 lf->exidx_size = shdr[i].sh_size; in link_elf_locate_exidx()
861 Elf_Shdr *shdr; in link_elf_locate_exidx_preload() local
867 shdr = (Elf_Shdr *)modinfo; in link_elf_locate_exidx_preload()
869 link_elf_locate_exidx(lf, shdr, nhdr); in link_elf_locate_exidx_preload()
990 Elf_Shdr *shdr; in link_elf_load_file() local
998 shdr = NULL; in link_elf_load_file()
1261 shdr = malloc(nbytes, M_LINKER, M_WAITOK | M_ZERO); in link_elf_load_file()
1263 (caddr_t)shdr, nbytes, hdr->e_shoff, in link_elf_load_file()
1271 if (shstrindex != 0 && shdr[shstrindex].sh_type == SHT_STRTAB && in link_elf_load_file()
1272 shdr[shstrindex].sh_size != 0) { in link_elf_load_file()
1273 nbytes = shdr[shstrindex].sh_size; in link_elf_load_file()
1276 shdr[shstrindex].sh_offset, UIO_SYSSPACE, IO_NODELOCKED, in link_elf_load_file()
1285 if (shdr[i].sh_type == SHT_SYMTAB) { in link_elf_load_file()
1287 symstrindex = shdr[i].sh_link; in link_elf_load_file()
1288 } else if (shstrs != NULL && shdr[i].sh_name != 0 && in link_elf_load_file()
1289 strcmp(shstrs + shdr[i].sh_name, ".ctors") == 0) { in link_elf_load_file()
1291 lf->ctors_addr = mapbase + shdr[i].sh_addr - base_vaddr; in link_elf_load_file()
1292 lf->ctors_size = shdr[i].sh_size; in link_elf_load_file()
1298 symcnt = shdr[symtabindex].sh_size; in link_elf_load_file()
1300 strcnt = shdr[symstrindex].sh_size; in link_elf_load_file()
1304 ef->symbase, symcnt, shdr[symtabindex].sh_offset, in link_elf_load_file()
1310 ef->strbase, strcnt, shdr[symstrindex].sh_offset, in link_elf_load_file()
1324 link_elf_locate_exidx(lf, shdr, hdr->e_shnum); in link_elf_load_file()
1338 free(shdr, M_LINKER); in link_elf_load_file()