Lines Matching refs:dbg

35 _dwarf_arange_cleanup(Dwarf_Debug dbg)  in _dwarf_arange_cleanup()  argument
40 STAILQ_FOREACH_SAFE(as, &dbg->dbg_aslist, as_next, tas) { in _dwarf_arange_cleanup()
46 STAILQ_REMOVE(&dbg->dbg_aslist, as, _Dwarf_ArangeSet, as_next); in _dwarf_arange_cleanup()
50 if (dbg->dbg_arange_array) in _dwarf_arange_cleanup()
51 free(dbg->dbg_arange_array); in _dwarf_arange_cleanup()
53 dbg->dbg_arange_array = NULL; in _dwarf_arange_cleanup()
54 dbg->dbg_arange_cnt = 0; in _dwarf_arange_cleanup()
58 _dwarf_arange_init(Dwarf_Debug dbg, Dwarf_Error *error) in _dwarf_arange_init() argument
69 if ((ds = _dwarf_find_section(dbg, ".debug_aranges")) == NULL) in _dwarf_arange_init()
72 if (!dbg->dbg_info_loaded) { in _dwarf_arange_init()
73 ret = _dwarf_info_load(dbg, 1, error); in _dwarf_arange_init()
82 DWARF_SET_ERROR(dbg, error, DW_DLE_MEMORY); in _dwarf_arange_init()
86 STAILQ_INSERT_TAIL(&dbg->dbg_aslist, as, as_next); in _dwarf_arange_init()
89 length = dbg->read(ds->ds_data, &offset, 4); in _dwarf_arange_init()
92 length = dbg->read(ds->ds_data, &offset, 8); in _dwarf_arange_init()
97 as->as_version = dbg->read(ds->ds_data, &offset, 2); in _dwarf_arange_init()
99 DWARF_SET_ERROR(dbg, error, DW_DLE_VERSION_STAMP_ERROR); in _dwarf_arange_init()
104 as->as_cu_offset = dbg->read(ds->ds_data, &offset, dwarf_size); in _dwarf_arange_init()
105 STAILQ_FOREACH(cu, &dbg->dbg_cu, cu_next) { in _dwarf_arange_init()
110 DWARF_SET_ERROR(dbg, error, DW_DLE_ARANGE_OFFSET_BAD); in _dwarf_arange_init()
116 as->as_addrsz = dbg->read(ds->ds_data, &offset, 1); in _dwarf_arange_init()
117 as->as_segsz = dbg->read(ds->ds_data, &offset, 1); in _dwarf_arange_init()
124 addr = dbg->read(ds->ds_data, &offset, as->as_addrsz); in _dwarf_arange_init()
125 range = dbg->read(ds->ds_data, &offset, as->as_addrsz); in _dwarf_arange_init()
130 DWARF_SET_ERROR(dbg, error, DW_DLE_MEMORY); in _dwarf_arange_init()
137 dbg->dbg_arange_cnt++; in _dwarf_arange_init()
142 if (dbg->dbg_arange_cnt > 0) { in _dwarf_arange_init()
143 if ((dbg->dbg_arange_array = malloc(dbg->dbg_arange_cnt * in _dwarf_arange_init()
145 DWARF_SET_ERROR(dbg, error, DW_DLE_MEMORY); in _dwarf_arange_init()
151 STAILQ_FOREACH(as, &dbg->dbg_aslist, as_next) { in _dwarf_arange_init()
153 dbg->dbg_arange_array[i++] = ar; in _dwarf_arange_init()
155 assert((Dwarf_Unsigned)i == dbg->dbg_arange_cnt); in _dwarf_arange_init()
162 _dwarf_arange_cleanup(dbg); in _dwarf_arange_init()
168 _dwarf_arange_gen(Dwarf_P_Debug dbg, Dwarf_Error *error) in _dwarf_arange_gen() argument
177 as = dbg->dbgp_as; in _dwarf_arange_gen()
185 as->as_addrsz = dbg->dbg_pointer_size; in _dwarf_arange_gen()
189 if ((ret = _dwarf_section_init(dbg, &ds, ".debug_aranges", 0, error)) != in _dwarf_arange_gen()
194 RCHECK(_dwarf_reloc_section_init(dbg, &drs, ds, error)); in _dwarf_arange_gen()
199 RCHECK(_dwarf_reloc_entry_add(dbg, drs, ds, dwarf_drt_data_reloc, 4, in _dwarf_arange_gen()
211 RCHECK(_dwarf_reloc_entry_add(dbg, drs, ds, in _dwarf_arange_gen()
212 dwarf_drt_data_reloc, dbg->dbg_pointer_size, ds->ds_size, in _dwarf_arange_gen()
215 RCHECK(_dwarf_reloc_entry_add_pair(dbg, drs, ds, in _dwarf_arange_gen()
216 dbg->dbg_pointer_size, ds->ds_size, ar->ar_symndx, in _dwarf_arange_gen()
219 RCHECK(WRITE_VALUE(ar->ar_range, dbg->dbg_pointer_size)); in _dwarf_arange_gen()
221 RCHECK(WRITE_VALUE(0, dbg->dbg_pointer_size)); in _dwarf_arange_gen()
222 RCHECK(WRITE_VALUE(0, dbg->dbg_pointer_size)); in _dwarf_arange_gen()
227 dbg->write(ds->ds_data, &offset, as->as_length, 4); in _dwarf_arange_gen()
230 RCHECK(_dwarf_section_callback(dbg, ds, SHT_PROGBITS, 0, 0, 0, error)); in _dwarf_arange_gen()
233 RCHECK(_dwarf_reloc_section_finalize(dbg, drs, error)); in _dwarf_arange_gen()
238 _dwarf_reloc_section_free(dbg, &drs); in _dwarf_arange_gen()
241 _dwarf_section_free(dbg, &ds); in _dwarf_arange_gen()
247 _dwarf_arange_pro_cleanup(Dwarf_P_Debug dbg) in _dwarf_arange_pro_cleanup() argument
252 assert(dbg != NULL && dbg->dbg_mode == DW_DLC_WRITE); in _dwarf_arange_pro_cleanup()
253 if (dbg->dbgp_as == NULL) in _dwarf_arange_pro_cleanup()
256 as = dbg->dbgp_as; in _dwarf_arange_pro_cleanup()
262 dbg->dbgp_as = NULL; in _dwarf_arange_pro_cleanup()