diff options
| author | kcbanner <kcbanner@gmail.com> | 2023-07-16 22:07:20 -0400 |
|---|---|---|
| committer | kcbanner <kcbanner@gmail.com> | 2023-07-20 22:58:16 -0400 |
| commit | 774dc2fdb75dc7f6b7e0bd2cfe947fffb9829ba1 (patch) | |
| tree | 84acdd4fe9fe07c1122ac15b5fb50f3dd6ba907c /lib/std/debug.zig | |
| parent | bdb0a6fa77cc7eff7d03b022210328b24f9b6662 (diff) | |
| download | zig-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.zig | 3 |
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, §ions, 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 {}; |
