Yeah… that’s the issue I was encountering when I looked at it before my PTO. Will try to circle back to it this week.
https://reviews.llvm.org/D137657
Just the parsing diff. Working on second one that changes internal representation of {cu,tu}-index offset to 64bit.
@dblaikie can you take a look at ⚙ D139379 [llvm][dwwarf] Change CU/TU index to 64-bit when you get a chance? Would love to land it and other diff before EOY.
Also previously you mentioned you were having issues with .debug_str.dwo overflowing 4GB in DWP. Did you make any progress on the mitigation effort, or have suggestions on how to address it?
Yeah, I’ll take a look at the review - sorry it dropped through the cracks for a bit .
Yeah, we’re addressing that with -gsimple-template-names
(this emits DW_AT_name
for most templates as the base name, without textual template arguments - relying on the DW_TAG_template_*_parameter
DIEs to carry that information alone) which I’ve implemented in Clang and @aeubanks has implemented support/fixes for in LLDB recently. We’re about ready to turn that on at Google.
@pogo59 has proposed/accepted upstream that .debug_str_offsets.dwo
could use DWARF64 where the rest of the dwo/dwp uses DWARF32, so that’d be an option as well, though it hasn’t been implemented - it could even be done selectively per-.debug_str_offsets.dwo
contribution, if it contains overflowed strings, which would be relatively low cost in terms of size increase of DWP files.
Same thing.
@dblaikie Gentle ping on ⚙ D139379 [llvm][dwwarf] Change CU/TU index to 64-bit.
I realize it’s holiday season, and you might be busy with other stuff. Is there anyone else that I can tag to review, if you are busy?