DwarfLinesResolve
Description
Find the entry covering vaddr (file-relative virtual address). The match is the row with the greatest address <= vaddr whose sequence has not ended; if vaddr falls past the last row of every sequence, returns NULL.
Success
Returns a pointer to the matching entry inside self->entries. Valid until DwarfLinesDeinit.
Failure
Returns NULL when no row covers vaddr.
Usage example (Cross-references)
Usage examples (Cross-references)
- In
Dwarf.c:71:
bool ok = false;
if (built) {
const DwarfLineEntry *e = DwarfLinesResolve(&lines, file_relative);
if (e && e->file && ZstrFindSubstring(e->file, "Dwarf.c") != NULL && e->line > 0) {
ok = true; }
if (cache_entry->dwarf_ok) {
const DwarfLineEntry *de = DwarfLinesResolve(&cache_entry->dwarf, file_relative);
if (de) {
out->source_file = de->file;- In
Dwarf.c:707:
// ---------------------------------------------------------------------------
const DwarfLineEntry *DwarfLinesResolve(const DwarfLines *self, u64 vaddr) {
if (!self || self->entries.length == 0)
return NULL;
Last updated on