Lines Matching full:dwarf
35 #include <dwarf.h>
39 dwarf_next_unit (Dwarf *dwarf, Dwarf_Off off, Dwarf_Off *next_off, in dwarf_next_unit() argument
46 return __libdw_next_unit (dwarf, v4_debug_types, off, next_off, in dwarf_next_unit()
55 __libdw_next_unit (Dwarf *dwarf, bool v4_debug_types, Dwarf_Off off, in INTDEF()
62 /* Note that debug_type units come from .debug_types in DWARF < 5 and in INTDEF()
63 from .debug_info in DWARF >= 5. If the user requested the in INTDEF()
69 if (dwarf == NULL) in INTDEF()
74 || unlikely (dwarf->sectiondata[sec_idx] == NULL) in INTDEF()
78 || unlikely (off + 4 >= dwarf->sectiondata[sec_idx]->d_size)) in INTDEF()
86 const unsigned char *data = dwarf->sectiondata[sec_idx]->d_buf; in INTDEF()
88 const unsigned char *bytes_end = data + dwarf->sectiondata[sec_idx]->d_size; in INTDEF()
96 including the length field itself. In the 32-bit DWARF format, in INTDEF()
98 0xfffffff0); in the 64-bit DWARF format, this consists of the in INTDEF()
101 indicates whether this unit is 32-bit of 64-bit DWARF, which in INTDEF()
105 DWARF information for that compilation unit. For DWARF Version in INTDEF()
110 3. For DWARF 2, 3 and 4 (including v4 type units): in INTDEF()
114 the 32-bit DWARF format, this is a 4-byte unsigned length; in in INTDEF()
115 the 64-bit DWARF format, this is an 8-byte unsigned length (see in INTDEF()
118 For DWARF 5: in INTDEF()
124 4. For all DWARF versions (including v4 type units): in INTDEF()
129 for DWARF versions 2, 3 and 4 (except for v4 type units). in INTDEF()
131 5. For DWARF 5 only (this is field 3 for DWARF 2, 3, 4 and v4 types): in INTDEF()
135 the 32-bit DWARF format, this is a 4-byte unsigned length; in in INTDEF()
136 the 64-bit DWARF format, this is an 8-byte unsigned length. in INTDEF()
139 DWARF 5 optional (skeleton, split_compile, type and in INTDEF()
145 DWARF 5 optional (type and split_type) and v4 type units: in INTDEF()
146 A 4-byte or 8-byte unsigned offset. In the 32-bit DWARF format, in INTDEF()
147 this is a 4-byte unsigned length; in the 64-bit DWARF format, in INTDEF()
152 uint64_t length = read_4ubyte_unaligned_inc (dwarf, bytes); in INTDEF()
155 used to indicate that 64-bit dwarf information is being used, the in INTDEF()
169 /* This is a 64-bit DWARF format. */ in INTDEF()
172 length = read_8ubyte_unaligned_inc (dwarf, bytes); in INTDEF()
178 uint_fast16_t version = read_2ubyte_unaligned_inc (dwarf, bytes); in INTDEF()
180 /* We keep unit_type at zero for older DWARF since we cannot in INTDEF()
216 >= dwarf->sectiondata[sec_idx]->d_size)) in INTDEF()
229 depends on whether this is a 32-bit or 64-bit DWARF definition. */ in INTDEF()
230 if (__libdw_read_offset_inc (dwarf, sec_idx, &bytes, offset_size, in INTDEF()
243 sig_id = read_8ubyte_unaligned_inc (dwarf, bytes); in INTDEF()
248 if (__libdw_read_offset_inc (dwarf, sec_idx, &bytes, offset_size, in INTDEF()
301 dwarf_nextcu (Dwarf *dwarf, Dwarf_Off off, Dwarf_Off *next_off, in dwarf_nextcu() argument
305 return INTUSE(dwarf_next_unit) (dwarf, off, next_off, header_sizep, NULL, in dwarf_nextcu()