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

H.J. Lu hjl.tools@gmail.com
Wed Jul 21 16:23:00 GMT 2010


On Wed, Jul 21, 2010 at 7:48 AM, Jakub Jelinek <jakub@redhat.com> wrote:
> 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?

For the time being, linker will work with mixed input and generate
uncompressed output. Linker compression will be a separate patch.

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

OK.  Can the new .zdebug sections can be either compressed or
uncompressed?


-- 
H.J.



More information about the Binutils mailing list