Lines Matching refs:mod

40 dwar (Dwfl_Module *mod, unsigned int idx)
42 return &mod->dw->aranges->info[mod->aranges[idx].arange];
47 addrarange (Dwfl_Module *mod, Dwarf_Addr addr, struct dwfl_arange **arange)
49 if (mod->aranges == NULL)
54 if (INTUSE(dwarf_getaranges) (mod->dw, &dwaranges, &naranges) != 0)
85 mod->naranges = naranges;
87 mod->aranges = (realloc (aranges, naranges * sizeof aranges[0])
91 mod->lazycu += naranges;
95 addr = dwfl_deadjust_dwarf_addr (mod, addr);
98 size_t l = 0, u = mod->naranges;
102 Dwarf_Addr start = dwar (mod, idx)->addr;
110 if (idx + 1 < mod->naranges)
112 if (addr >= dwar (mod, idx + 1)->addr)
122 = &mod->dw->aranges->info[mod->dw->aranges->naranges - 1];
128 *arange = &mod->aranges[idx];
143 assert (cu->mod->lazycu == 0);
148 less_lazy (Dwfl_Module *mod)
150 if (--mod->lazycu > 0)
154 tdestroy (mod->lazy_cu_root, nofree);
155 mod->lazy_cu_root = NULL;
174 intern_cu (Dwfl_Module *mod, Dwarf_Off cuoff, struct dwfl_cu **result)
176 if (unlikely (cuoff + 4 >= mod->dw->sectiondata[IDX_debug_info]->d_size))
178 if (likely (mod->lazycu == 1))
183 less_lazy (mod);
195 Dwarf_Die *die = INTUSE(dwarf_offdie) (mod->dw, cuoff, &cudie);
201 struct dwfl_cu **found = tsearch (&key, &mod->lazy_cu_root, &compare_cukey);
215 cu->mod = mod;
220 struct dwfl_cu **newvec = realloc (mod->cu, ((mod->ncu + 1)
221 * sizeof (mod->cu[0])));
227 mod->cu = newvec;
229 mod->cu[mod->ncu++] = cu;
231 mod->first_cu = cu;
245 __libdwfl_nextcu (Dwfl_Module *mod, struct dwfl_cu *lastcu,
255 nextp = &mod->first_cu;
268 int end = INTUSE(dwarf_nextcu) (mod->dw, cuoff, &nextoff, &cuhdrsz,
278 Dwfl_Error result = intern_cu (mod, cuoff + cuhdrsz, nextp);
295 arangecu (Dwfl_Module *mod, struct dwfl_arange *arange, struct dwfl_cu **cu)
299 const Dwarf_Arange *dwarange = &mod->dw->aranges->info[arange->arange];
300 Dwfl_Error result = intern_cu (mod, dwarange->offset, &arange->cu);
304 less_lazy (mod); /* Each arange with null ->cu counts once. */
313 __libdwfl_addrcu (Dwfl_Module *mod, Dwarf_Addr addr, struct dwfl_cu **cu)
316 return addrarange (mod, addr, &arange) ?: arangecu (mod, arange, cu);