Closed jeremy-rifkin closed 4 months ago
I have a DWARF committee meeting in 90 minutes and then a long-standing appointment so it will be 4-5 hours before I can really look at this.
And as it happens I am actually working on improving rnglists and reporting thereof.
I downloaded the DWARF4 example. Thank you. I'll get back to you in a few hours.
Have corrected aspects of rnglists, but as yet this will not help you. Now to have dwarfdump report such better so one can easily verify by hand whether rnglists are handled properly. Whether a step three is needed is ... unclear. More tomorrow.
DWARF4 DW_AT GNU_ranges_base was being ignored, I forgot to include it in the merge step (merge from the tied object to the dwo/dwp object). With that included things look pretty good. I have some testing to do now to ensure nothing breaks.
Have pushed these changes. Doing additional testing and tidying up. LGTM.
Awesome! Thank you so much Dave as always for the quick reply and fix!
I have confirmed the new changes work locally for me, at least for range lists emitted by gcc. I am bumping into issues with clang and I'll take the time to look into them tomorrow.
Ok, I have looked at the issue with clang and have found that it's an issue on my end. All good, thank you again so much!
Problem solved, so closing.
Hi, I'm running into an issue with range lists under
-gsplit-dwarf -gdwarf-4
which as far as I can tell is either a libdwarf bug or a gcc bug.In this case I'm trying to find which function has the program counter
0x188ad
. It should bestacktrace_basic
, which objdump confirms:However, the rangelist as reported by libdwarf doesn't contain this address:
I'm not sure whether this is an issue with libdwarf's parsing of the range list or if gcc isn't emitting the correct information.
I have attached the relevant .dwo file and the tied file in case it can be of help: unittest_and_stacktrace_dwo.zip
Under most of my testing with
-gsplit-dwarf -gdwarf-4
I've found everything to work splendidly, I think this is the only time I've ran into issues.All is fine under dwarf 5.