You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
SIGSEGV (Address boundary error) in dumpDebugLoc(llvm::DWARFContext&, llvm::DWARFYAML::Data&) () #6879
Fixed by PR #7910 (commit 3f3ed7f6f, "[DWARF] Fix segfault with empty
dwarf .debug_loc").
The fix adds a null-CU guard at the top of dumpDebugLoc in third_party/llvm-project/dwarf2yaml.cpp:
auto CUS = DCtx.normal_units();
if (CUS.empty()) {
return;
}
Before this guard, a module whose .debug_loc section contained
location lists with no associated compile unit would dereference a
null DWARFCompileUnit* during base-address resolution, producing
the SIGSEGV reported here.
Verified on current main: the attached reproducer
(iot-config-web-dx_bg.wasm) optimizes successfully with
Activity
kripken commentedon Aug 28, 2024
Looks like a problem with our DWARF support, which is experimental. It is recommended to use source maps instead for debugging.
To avoid this problem you can strip debug info, by adding
--strip-debugto that command.ArkadySkv commentedon Oct 9, 2026
Fixed by PR #7910 (commit
3f3ed7f6f, "[DWARF] Fix segfault with emptydwarf .debug_loc").
The fix adds a null-CU guard at the top of
dumpDebugLocinthird_party/llvm-project/dwarf2yaml.cpp:Before this guard, a module whose
.debug_locsection containedlocation lists with no associated compile unit would dereference a
null
DWARFCompileUnit*during base-address resolution, producingthe SIGSEGV reported here.
Verified on current main: the attached reproducer
(
iot-config-web-dx_bg.wasm) optimizes successfully withexits with status 0, and does not crash under gdb. Closing as fixed.