Lines Matching defs:phdr

726     const Elf_Phdr *phdr, u_long rbase, u_long *base_addrp)
739 if (phdr[i].p_type != PT_LOAD || phdr[i].p_memsz == 0)
743 prot = __elfN(trans_prot)(phdr[i].p_flags);
744 error = __elfN(load_section)(imgp, phdr[i].p_offset,
745 (caddr_t)(uintptr_t)phdr[i].p_vaddr + rbase,
746 phdr[i].p_memsz, phdr[i].p_filesz, prot);
754 base_addr = trunc_page(phdr[i].p_vaddr + rbase);
787 const Elf_Phdr *phdr = NULL;
855 phdr = (const Elf_Phdr *)(imgp->image_header + hdr->e_phoff);
856 if (!aligned(phdr, Elf_Addr)) {
861 error = __elfN(load_sections)(imgp, hdr, phdr, rbase, &base_addr);
927 const Elf_Phdr *phdr)
939 if (phdr[i].p_type != PT_LOAD || phdr[i].p_memsz == 0)
942 seg_addr = trunc_page(phdr[i].p_vaddr + imgp->et_dyn_addr);
943 seg_size = round_page(phdr[i].p_memsz +
944 phdr[i].p_vaddr + imgp->et_dyn_addr - seg_addr);
956 if ((phdr[i].p_flags & PF_X) != 0 && text_size < seg_size) {
1003 __elfN(get_interp)(struct image_params *imgp, const Elf_Phdr *phdr,
1010 KASSERT(phdr->p_type == PT_INTERP,
1011 ("%s: p_type %u != PT_INTERP", __func__, phdr->p_type));
1017 if (phdr->p_filesz < 2 || phdr->p_filesz > MAXPATHLEN) {
1022 interp_name_len = phdr->p_filesz;
1023 if (phdr->p_offset > PAGE_SIZE ||
1024 interp_name_len > PAGE_SIZE - phdr->p_offset) {
1042 interp_name_len, phdr->p_offset,
1057 interp = __DECONST(char *, imgp->image_header) + phdr->p_offset;
1102 const Elf_Phdr *phdr;
1137 phdr = (const Elf_Phdr *)(imgp->image_header + hdr->e_phoff);
1138 if (!aligned(phdr, Elf_Addr)) {
1170 switch (phdr[i].p_type) {
1173 baddr = phdr[i].p_vaddr;
1174 if (!powerof2(phdr[i].p_align) ||
1175 phdr[i].p_align > maxsalign) {
1180 if (phdr[i].p_align > maxalign)
1181 maxalign = phdr[i].p_align;
1182 if (mapsz + phdr[i].p_memsz < mapsz) {
1187 mapsz += phdr[i].p_memsz;
1196 if (phdr[i].p_offset == 0 &&
1198 phdr[i].p_filesz)
1199 proghdr = phdr[i].p_vaddr + hdr->e_phoff;
1208 error = __elfN(get_interp)(imgp, &phdr[i], &interp,
1216 __elfN(trans_prot)(phdr[i].p_flags);
1224 imgp->stack_sz = phdr[i].p_memsz;
1227 proghdr = phdr[i].p_vaddr;
1346 error = __elfN(load_sections)(imgp, hdr, phdr, imgp->et_dyn_addr, NULL);
1350 error = __elfN(enforce_limits)(imgp, hdr, phdr);
1416 elf_auxargs->phdr = proghdr + imgp->et_dyn_addr;
1458 AUXARGS_ENTRY(pos, AT_PHDR, args->phdr);
1546 Elf_Phdr *phdr; /* Program header to fill in */
1715 Elf_Phdr *phdr = phc->phdr;
1719 phdr->p_type = PT_LOAD;
1720 phdr->p_offset = phc->offset;
1721 phdr->p_vaddr = entry->start;
1722 phdr->p_paddr = 0;
1723 phdr->p_filesz = phdr->p_memsz = entry->end - entry->start;
1724 phdr->p_align = PAGE_SIZE;
1725 phdr->p_flags = __elfN(untrans_prot)(entry->protection);
1727 phc->offset += phdr->p_filesz;
1728 phc->phdr++;
1911 Elf_Phdr *phdr;
1973 phdr = (Elf_Phdr *)((char *)hdr + ehdr->e_phoff);
1976 phdr->p_type = PT_NOTE;
1977 phdr->p_offset = hdrsize;
1978 phdr->p_vaddr = 0;
1979 phdr->p_paddr = 0;
1980 phdr->p_filesz = notesz;
1981 phdr->p_memsz = 0;
1982 phdr->p_flags = PF_R;
1983 phdr->p_align = ELF_NOTE_ROUNDSIZE;
1984 phdr++;
1987 phc.phdr = phdr;
2857 const Elf_Phdr *phdr;
2864 phdr = (const Elf_Phdr *)(imgp->image_header + hdr->e_phoff);
2871 if (phdr[i].p_type == PT_NOTE && __elfN(parse_notes)(imgp,
2872 &brandnote->hdr, brandnote->vendor, &phdr[i], brandnote_cb,
2875 if (phdr[j].p_type == PT_NOTE &&
2877 FREEBSD_ABI_VENDOR, &phdr[j],