• Home
  • Raw
  • Download

Lines Matching full:elf

44 elf_newscn (Elf *elf)  in elf_newscn()  argument
49 if (elf == NULL) in elf_newscn()
52 /* We rely on the prefix of the `elf', `elf32', and `elf64' element in elf_newscn()
54 assert (offsetof (Elf, state.elf.scns_last) in elf_newscn()
55 == offsetof (Elf, state.elf32.scns_last)); in elf_newscn()
56 assert (offsetof (Elf, state.elf.scns_last) in elf_newscn()
57 == offsetof (Elf, state.elf64.scns_last)); in elf_newscn()
58 assert (offsetof (Elf, state.elf32.scns) in elf_newscn()
59 == offsetof (Elf, state.elf64.scns)); in elf_newscn()
61 rwlock_wrlock (elf->lock); in elf_newscn()
64 if (elf->state.elf.scns_last->cnt < elf->state.elf.scns_last->max) in elf_newscn()
66 result = &elf->state.elf.scns_last->data[elf->state.elf.scns_last->cnt]; in elf_newscn()
68 if (++elf->state.elf.scns_last->cnt == 1 in elf_newscn()
69 && (elf->state.elf.scns_last in elf_newscn()
70 == (elf->class == ELFCLASS32 in elf_newscn()
71 || (offsetof (Elf, state.elf32.scns) in elf_newscn()
72 == offsetof (Elf, state.elf64.scns)) in elf_newscn()
73 ? &elf->state.elf32.scns : &elf->state.elf64.scns))) in elf_newscn()
78 assert (elf->state.elf.scns_last->cnt > 1); in elf_newscn()
87 assert (elf->state.elf.scnincr > 0); in elf_newscn()
91 likely (elf->state.elf.scnincr in elf_newscn()
98 + ((elf->state.elf.scnincr *= 2) in elf_newscn()
112 newp->max = elf->state.elf.scnincr; in elf_newscn()
116 = 1 + elf->state.elf.scns_last->data[elf->state.elf.scns_last->max - 1].index; in elf_newscn()
119 elf->state.elf.scns_last = elf->state.elf.scns_last->next = newp; in elf_newscn()
123 if (elf->class == ELFCLASS32) in elf_newscn()
142 result->elf = elf; in elf_newscn()
144 result->list = elf->state.elf.scns_last; in elf_newscn()
159 rwlock_unlock (elf->lock); in elf_newscn()