Displaying 4 results from an estimated 4 matches for "cu_index".
2017 May 04
3
DWARF Fission + ThinLTO
...-full pair would have the same dwo_name but different dwo_IDs. You're making it sound like LTO is actually producing only one skeleton CU? That would be a bug.
I am not finding anywhere that explicitly says a .dwo file can have only one unit? Although it does seem that the definition of the cu_index assumes each unit should be treated as being in an independent .debug_info section, which is a problem for making cross-CU references in a given .dwo file. Thanks for bringing that up on dwarf-discuss already.
So this leads us to a few options - the 'simplest', that changes the semantics...
2017 May 03
3
DWARF Fission + ThinLTO
...concatenated together, except the debug_str and debug_str_offsets sections
which have special handling to do what you'd expect - deduplicate strings,
and adjust the str_offsets to point to the right offsets in the
deduplicated string section.
The other thing that DWP has, is an index, or two. cu_index and tu_index.
We'll just look at cu_index.
A cu_index for the cab.dwp above, is:
Index Signature INFO ABBR LINE STR_OFF
----- ------------------ -------- -------- -------- --------
2 0x7bd765349b7e7631 [2d, 65) [38, ae) [11, 22) [14, 3c)
8 0x66f4e160661d2687 [00,...
2017 May 04
2
DWARF Fission + ThinLTO
...ther, except the debug_str and debug_str_offsets sections which have special handling to do what you'd expect - deduplicate strings, and adjust the str_offsets to point to the right offsets in the deduplicated string section.
>>
>> The other thing that DWP has, is an index, or two. cu_index and tu_index. We'll just look at cu_index.
>>
>> A cu_index for the cab.dwp above, is:
>>
>> Index Signature INFO ABBR LINE STR_OFF
>> ----- ------------------ -------- -------- -------- --------
>> 2 0x7bd765349b7e7631 [2d, 65)...
2017 May 03
4
DWARF Fission + ThinLTO
So Dehao and I have been dealing with some of the nitty gritty details of
debug info with ThinLTO, specifically with Fission(Split DWARF).
This applies to LTO as well, so I won't single out ThinLTO here.
1) Multiple CUs in a .dwo file
Clang/LLVM produces a CU for each original source file - these CUs are kept
through IR linking (thin or full) and produced as distinct CUs in the
resulting