jankratochvil added a comment.

Just to clarify - I guess `DWARFConcatenatingDataExtractor` should replace all 
uses of `DWARFDataExtractor` in the `DWARF/` subdirectory, whenever 
`lldb::offset_t offset` is used, right?
As the other option would be to remap just `lldb::user_id_t` but that would not 
solve much.
BTW my https://reviews.llvm.org/D40474 patch: DWZ is using DWARF references in 
both main file `.debug_info` and in DWZ common file `.debug_info` so at least 
one of them always needs to get the read-in DWARF offsets adjusted anyway in 
`DWARFFormValue::Reference()`. Then I needed adjustments also in 
`DWARFDebugInfo::GetCompileUnitAranges()` as the DWZ common file I had to place 
from offset 0 so that it can be shared between multiple DWARF files using it, 
therefore `.debug_info` of the main files (users of DWZ common file) need to be 
shifted.
Also the DWZ common file is a separate DWARFDebugInfo so there needs to be some 
dispatcher (`DWARFDebugInfo::DWZRedirect()` in my 
https://reviews.llvm.org/D40474 DWZ patch) for it anyway, which is why I do not 
find `DWARFConcatenatingDataExtractor` as much a win for DWZ.
OTOH I do not think the DWARF parsing performance matters too much after 
`.debug_names` (or the Apple index which I haven't/cannot test) is used, why it 
should?


https://reviews.llvm.org/D32167



_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to