aboutsummaryrefslogtreecommitdiff
path: root/lib/std/debug.zig
diff options
context:
space:
mode:
authorkcbanner <kcbanner@gmail.com>2023-07-16 22:07:20 -0400
committerkcbanner <kcbanner@gmail.com>2023-07-20 22:58:16 -0400
commit774dc2fdb75dc7f6b7e0bd2cfe947fffb9829ba1 (patch)
tree84acdd4fe9fe07c1122ac15b5fb50f3dd6ba907c /lib/std/debug.zig
parentbdb0a6fa77cc7eff7d03b022210328b24f9b6662 (diff)
downloadzig-774dc2fdb75dc7f6b7e0bd2cfe947fffb9829ba1.tar.gz
zig-774dc2fdb75dc7f6b7e0bd2cfe947fffb9829ba1.zip
dwarf: add explicit_fde_offset to support more optimal __unwind_info dwarf lookups
Diffstat (limited to 'lib/std/debug.zig')
-rw-r--r--lib/std/debug.zig3
1 files changed, 1 insertions, 2 deletions
diff --git a/lib/std/debug.zig b/lib/std/debug.zig
index e85c37cf0a..410f5db380 100644
--- a/lib/std/debug.zig
+++ b/lib/std/debug.zig
@@ -653,7 +653,7 @@ pub const StackIterator = struct {
}
if (try module.getDwarfInfoForAddress(unwind_state.debug_info.allocator, unwind_state.dwarf_context.pc)) |di| {
- return di.unwindFrame(&unwind_state.dwarf_context, module.base_address);
+ return di.unwindFrame(&unwind_state.dwarf_context, null);
} else return error.MissingDebugInfo;
}
@@ -1894,7 +1894,6 @@ pub const DebugInfo = struct {
obj_di.* = try readElfDebugInfo(self.allocator, if (ctx.name.len > 0) ctx.name else null, ctx.build_id, null, &sections, null);
obj_di.base_address = ctx.base_address;
- // TODO: Don't actually scan everything, search on demand
// Missing unwind info isn't treated as a failure, as the unwinder will fall back to FP-based unwinding
obj_di.dwarf.scanAllUnwindInfo(self.allocator, ctx.base_address) catch {};