}
}
- /* Compress/decompress DWARF debug sections with names: .debug_* and
- .zdebug_*, after the section flags is set. */
+ /* Compress/decompress DWARF debug sections with names: .debug_*,
+ .zdebug_*, .gnu.debuglto_.debug_, after the section flags is set. */
if ((newsect->flags & SEC_DEBUGGING) != 0
&& (newsect->flags & SEC_HAS_CONTENTS) != 0
- && ((name[1] == 'd' && name[6] == '_')
- || (name[1] == 'z' && name[7] == '_')))
+ && (newsect->flags & SEC_ELF_OCTETS) != 0)
{
enum { nothing, compress, decompress } action = nothing;
int compression_header_size;
return;
section_name = bfd_section_name (sec);
- if (!startswith (section_name, ".debug_"))
+ if (!startswith (section_name, ".debug_")
+ && (!startswith (section_name, ".gnu.debuglto_.debug_")
+ || flag_compress_debug == COMPRESS_DEBUG_GNU_ZLIB))
return;
bool use_zstd = abfd->flags & BFD_COMPRESS_ZSTD;