This is the mail archive of the elfutils-devel@sourceware.org mailing list for the elfutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: dwarf4 Separate Type Unit Entries


>>>>> "Mark" == Mark Wielaard <mjw@redhat.com> writes:

Mark> Tom said that for a gdb build on F14 -g -O2 -vs- -gdwarf-4 -O2,
Mark> gives a size reduction from 16M to 11M.

Yeah; I was pretty surprised to see such a big difference in a plain C
program.

Mark> One advantage of the type unit compression is that gdb already has some
Mark> support for it, while the support for imported partial units is still on
Mark> some branch.

Yes, the .debug_types code in gdb pretty much just works.  There are a
few regressions if you run the whole test suite with -gdwarf-4.  I think
this isn't anything too serious; the one I investigated was a weird
scenario ("gdb something.o", where the .o has multiple .debug_types
sections).

I did write an imported unit patch, but as you say it is on a branch,
and not shipped, because we have no way to test it.  TBH I assume it is
incorrectly implemented.

Mark> So now we probably should figure out how to cash in on this alternative
Mark> compression variant. Does it make sense to create a dwarf writer that
Mark> outputs DW_TAG_type_units instead of DW_TAG_partial_units if they only
Mark> contain type information DIEs

I think starting with the reader would be better.

I'd like us to enable -gdwarf-4 by default in F16.

Mark> (I am not completely clear on what DIEs are and which are not
Mark> allowed to be included in the type units).

The DWARF standard obscures this information, or at least I couldn't
find it quickly, but IIRC the original proposal was clearer about this.

Tom

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]