Lines Matching refs:phdr

62     Elf_Phdr *phdr;  in map_object()  local
106 phdr = (Elf_Phdr *)((char *)hdr + hdr->e_phoff); in map_object()
107 phsize = hdr->e_phnum * sizeof (phdr[0]); in map_object()
108 phlimit = phdr + hdr->e_phnum; in map_object()
120 while (phdr < phlimit) { in map_object()
121 switch (phdr->p_type) { in map_object()
124 phinterp = phdr; in map_object()
128 segs[++nsegs] = phdr; in map_object()
137 phdr_vaddr = phdr->p_vaddr; in map_object()
138 phsize = phdr->p_memsz; in map_object()
142 phdyn = phdr; in map_object()
146 phtls = phdr; in map_object()
150 stack_flags = phdr->p_flags; in map_object()
154 relro_page = phdr->p_vaddr; in map_object()
155 relro_size = phdr->p_memsz; in map_object()
159 if (phdr->p_offset > PAGE_SIZE || in map_object()
160 phdr->p_offset + phdr->p_filesz > PAGE_SIZE) { in map_object()
161 note_map_len = round_page(phdr->p_offset + in map_object()
162 phdr->p_filesz) - trunc_page(phdr->p_offset); in map_object()
164 MAP_PRIVATE, fd, trunc_page(phdr->p_offset)); in map_object()
169 note_start = (Elf_Addr)(note_map + phdr->p_offset - in map_object()
170 trunc_page(phdr->p_offset)); in map_object()
172 note_start = (Elf_Addr)(char *)hdr + phdr->p_offset; in map_object()
174 note_end = note_start + phdr->p_filesz; in map_object()
178 ++phdr; in map_object()
292 obj->phdr = (const Elf_Phdr *)(obj->relocbase + phdr_vaddr); in map_object()
294 obj->phdr = malloc(phsize); in map_object()
295 if (obj->phdr == NULL) { in map_object()
300 memcpy(__DECONST(char *, obj->phdr), (char *)hdr + hdr->e_phoff, phsize); in map_object()
435 free(__DECONST(void *, obj->phdr)); in obj_free()