On Wed, Apr 18, 2012 at 09:36:57AM +0200, Jakub Jelinek wrote: > I'd like to announce dwz-0.1, a DWARF compression tool I've spent this > April hacking on. It is currently (see below) written as standalone tool, > with minimal dependencies (though time hasn't been spent on portability > yet, so assumes glibc host), in particular just a small amount of code > in it depends on libelf (tested with elfutils only), in C. > The tool parses DWARF2+ debug info, finds matching DIEs between different > CUs that might be moved to new CUs with DW_TAG_partial_unit, estimates > whether it is worthwhile, if it is, moves it there and adds > DW_TAG_imported_unit DIEs (a tree of them) to make sure every CU includes > all the needed DIEs. DW_TAG_imported_unit DIEs created by this tool > will only be direct children of DW_TAG_{compile,partial}_unit DIEs, if > something from a named namespace/module can be shared, the DW_TAG_namespace > or DW_TAG_module DIE with the same DW_AT_name is added in the partial unit > as well.
FYI, Frank Eigler has been so kind to create git repo for this, so the 0.1 release plus all bugfixes and improvements since then are in the http://sourceware.org/git/?p=dwz.git;a=summary repository. Jakub