[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug binutils/30880] readelf..debug-dump=loc displays bogus base address
From: |
sevaa at sprynet dot com |
Subject: |
[Bug binutils/30880] readelf..debug-dump=loc displays bogus base addresses |
Date: |
Sat, 07 Oct 2023 18:05:23 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=30880
--- Comment #1 from Vsevolod Alekseyev <sevaa at sprynet dot com> ---
Took a closer look. There are, essentially, three flavors of loclist dumping
implemented there:
- V4 (in display_loc_list())
- V5 with no offsets in unit header (in display_loclists_list())
- V5 by offsets (in display_offset_entry_loclists())
The latter is implemented naively. It doesn't take trace loclists back to CUs
in debug_info and is, therefore, incapable of properly decoding
DW_LLE_base_addressx, DW_LLE_startx_endx and other forms that reach back into
the top DIE of the home CU.
The only thing display_offset_entry_loclists() does that the other parser does
not is displaying the list of entry offsets. That's a trivial fix.
I'm going to get rid of display_offset_entry_loclists() altogether and make the
rest output unit headers in a compatible way.
--
You are receiving this mail because:
You are on the CC list for the bug.
- [Bug binutils/30880] readelf..debug-dump=loc displays bogus base addresses,
sevaa at sprynet dot com <=