HomePhabricator

llvm-symbolizer: Fix "start file" to work with Split DWARF

Authored by dblaikie on Jul 9 2021, 6:27 PM.

Description

llvm-symbolizer: Fix "start file" to work with Split DWARF

A followup to the feature added in
69da27c7496ea373567ce5121e6fe8613846e7a5 that added the optional "start
file name" to match "start line" - but this didn't work with Split DWARF
because of the need for the decl file number resolution code to refer
back to the skeleton unit to find its .debug_line contribution. So this
patch adds the necessary infrastructure to track the skeleton unit
corresponding to a split full unit for the purpose of this lookup.

Event Timeline

Herald added a subscriber: Restricted Project. · View Herald TranscriptJul 9 2021, 6:41 PM

The new test fails on Windows: http://45.33.8.238/win/41575/step_11.txt

Please take a look etc :)

perennial Windows path problem:(

# SYM: Filename: ./././test.h
       ^
<stdin>:1:1: note: scanning from here
f1()
^
<stdin>:2:2: note: possible intended match here
 Filename: .\.\./test.h
/llvm/test/DebugInfo/X86/symbolize_function_start.s
185–186

.debug_gnu_pubnames/.debug_gnu_pubtypes can be removed from the test.