PATCH: Generate compressed DWARF debug info in .debug* sections

Jakub Jelinek jakub@redhat.com
Wed Jul 21 14:49:00 GMT 2010


On Wed, Jul 21, 2010 at 07:30:37AM -0700, H.J. Lu wrote:
> On Tue, Jul 20, 2010 at 04:38:56PM -0700, H.J. Lu wrote:
> > Hi,
> > 
> > This patch added SHF_GNU_COMPRESSED and fixed:
> > 
> > http://www.sourceware.org/bugzilla/show_bug.cgi?id=11819
> > 
> > I implemented --compress-debug-sections/--decompress-debug-sections for
> > objcopy.  Linker can also understand compressed debug sections.  I will
> > work on linker --compress-debug-sections support later.
> > 
> > SHF_GNU_COMPRESSED isn't strictly required. I can peek into
> > .debug_* sections like gdb does. On the other hand, SHF_GNU_COMPRESSED
> > can avoid the peek. I can prepare a patch without SHF_GNU_COMPRESSED.
> > Any comments on that?
> > 
> 
> I think we should avoid SHF_GNU_COMPRESSED.  Here is a patch without
> SHF_GNU_COMPRESSED.  OK to install?

0x5a4c4942 or 0x42494c5a are valid unit lengths for .debug_info, so
IMHO it is a very bad design to avoid having any special flag that the
section has different, special, compressed format.

BTW, if some .debug_* sections are compressed in some objects and not
compressed in others, is the result of linking them together a mixture of
both, or will it be recompressed as whole, something else?

I think .zdebug_* was much better idea then this weird overloading of
standard sections, it will confuse a lot of tools very badly.

	Jakub



More information about the Binutils mailing list