Don't compress empty debug sections.

gas/

2011-01-18  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/12409
	* write.c (compress_debug): Return if section size is 0.

gas/testsuite/

2011-01-18  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/12409
	* gas/elf/dwarf2-4.d: New.
	* gas/elf/dwarf2-4.s: Likewise.
This commit is contained in:
H.J. Lu 2011-01-18 18:55:59 +00:00
parent 2b52916eef
commit 24a2d04da0
6 changed files with 39 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2011-01-18 H.J. Lu <hongjiu.lu@intel.com>
PR gas/12409
* write.c (compress_debug): Return if section size is 0.
2011-01-18 Mingfeng Wu <mingfeng@faraday-tech.com>
* config/tc-arm.c (arm_cpus): Add Faraday ARMv5TE compatible

View File

@ -1,3 +1,11 @@
2011-01-18 H.J. Lu <hongjiu.lu@intel.com>
PR gas/12409
* gas/elf/dwarf2-4.d: New.
* gas/elf/dwarf2-4.s: Likewise.
* gas/elf/elf.exp: Run dwarf2-4.
2011-01-18 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/intel.d: Updated.

View File

@ -0,0 +1,12 @@
#as: --compress-debug-sections
#readelf: -w
#name: DWARF2 4
#not-target: ia64-*-*
Contents of the .[z]?debug_abbrev section:
Section '.debug_info' has no debugging data.
Section '.debug_line' has no debugging data.

View File

@ -0,0 +1,12 @@
.file "__dn_comp.c"
.section .debug_abbrev,"",@progbits
.Ldebug_abbrev0:
.section .debug_info,"",@progbits
.Ldebug_info0:
.section .debug_line,"",@progbits
.Ldebug_line0:
.text
.Ltext0:
.Letext0:
.section .debug_abbrev
.byte 0x0

View File

@ -178,5 +178,6 @@ if { ([istarget "*-*-*elf*"]
run_dump_test "dwarf2-1"
run_dump_test "dwarf2-2"
run_dump_test "dwarf2-3"
run_dump_test "dwarf2-4"
run_dump_test "bad-section-flag"
}

View File

@ -1359,6 +1359,7 @@ compress_debug (bfd *abfd, asection *sec, void *xxx ATTRIBUTE_UNUSED)
flagword flags = bfd_get_section_flags (abfd, sec);
if (seginfo == NULL
|| sec->size == 0
|| (flags & (SEC_ALLOC | SEC_HAS_CONTENTS)) == SEC_ALLOC)
return;