Lines Matching refs:elf
38 elf_newscn(Elf * elf) in elf_newscn() argument
42 if (elf == 0) in elf_newscn()
45 ELFWLOCK(elf) in elf_newscn()
50 if ((elf->ed_hdscn == 0) && (_elf_cook(elf) != OK_YES)) { in elf_newscn()
51 ELFUNLOCK(elf) in elf_newscn()
54 if (elf->ed_ehdr == 0) { in elf_newscn()
56 ELFUNLOCK(elf) in elf_newscn()
60 if (elf->ed_class == ELFCLASS32) { in elf_newscn()
63 if (elf->ed_hdscn == 0) { in elf_newscn()
65 ELFUNLOCK(elf) in elf_newscn()
69 s->sb_scn.s_elf = elf; in elf_newscn()
70 elf->ed_hdscn = elf->ed_tlscn = &s->sb_scn; in elf_newscn()
74 ELFUNLOCK(elf) in elf_newscn()
78 tl = elf->ed_tlscn; in elf_newscn()
79 s->sb_scn.s_elf = elf; in elf_newscn()
81 elf->ed_tlscn = tl->s_next = &s->sb_scn; in elf_newscn()
82 ((Elf32_Ehdr *)elf->ed_ehdr)->e_shnum in elf_newscn()
88 ELFUNLOCK(elf) in elf_newscn()
90 } else if (elf->ed_class == ELFCLASS64) { in elf_newscn()
93 if (elf->ed_hdscn == 0) { in elf_newscn()
95 ELFUNLOCK(elf) in elf_newscn()
99 s->sb_scn.s_elf = elf; in elf_newscn()
100 elf->ed_hdscn = elf->ed_tlscn = &s->sb_scn; in elf_newscn()
104 ELFUNLOCK(elf) in elf_newscn()
108 tl = elf->ed_tlscn; in elf_newscn()
109 s->sb_scn.s_elf = elf; in elf_newscn()
111 elf->ed_tlscn = tl->s_next = &s->sb_scn; in elf_newscn()
112 ((Elf64_Ehdr *)elf->ed_ehdr)->e_shnum in elf_newscn()
118 ELFUNLOCK(elf) in elf_newscn()
122 ELFUNLOCK(elf) in elf_newscn()