This is the mail archive of the
mailing list for the Archer project.
Re: Initial psymtab replacement results
> I think we ought to change GCC to drop the .debug_pub* sections (and
> maybe .debug_aranges), at least on Linux. AFAIK they aren't used by
> anything, and indeed are barely usable due to historic bugs -- so they
> are just wasting time and space.
A correct .debug_aranges is trivially deduced from the .debug_info data.
So any DWARF rewriter can (and will) easily emit this from scratch (and
correct, and maybe consolidating the uselessly many entries for the same
CU with adjacent address ranges that just bend around a zillion 2-byte
section alignment holes). (Perhaps there is something easy and kosher
to do that GDB could use as an indicator of a .debug_aranges worth using.)
With .debug_pub* it has always been my impression that the extraction
from the DIE tree is not fully generic. That is, it at least assumes
some language-specific knowledge to construct foo::bar names and the
like. I've never been entirely clear on if it's even entirely knowable
just from very simple language knowledge as opposed to encoding some
choices or extra knowledge the compiler had. As a hacker of supposedly
fully-generic DWARF tools, I am much happier with the idea of index
sections that are described purely in terms of a generic extraction
from the DIE trees without regard to any knowledge outside the DWARF