diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2011-01-18 18:55:59 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2011-01-18 18:55:59 +0000 |
commit | 24a2d04da085e1e795c6e271ae43235383b53a04 (patch) | |
tree | 78eff6f416fc224bed3fe180061170fafcb96849 /gas | |
parent | 2b52916eef5b07a8651af45db0992936f98263d2 (diff) | |
download | gdb-24a2d04da085e1e795c6e271ae43235383b53a04.zip gdb-24a2d04da085e1e795c6e271ae43235383b53a04.tar.gz gdb-24a2d04da085e1e795c6e271ae43235383b53a04.tar.bz2 |
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.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/testsuite/ChangeLog | 8 | ||||
-rw-r--r-- | gas/testsuite/gas/elf/dwarf2-4.d | 12 | ||||
-rw-r--r-- | gas/testsuite/gas/elf/dwarf2-4.s | 12 | ||||
-rw-r--r-- | gas/testsuite/gas/elf/elf.exp | 1 | ||||
-rw-r--r-- | gas/write.c | 1 |
6 files changed, 39 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 30d7609..bb47e72 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -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 diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 26a1add..2fc1b36 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,5 +1,13 @@ 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. * gas/i386/opcode-intel.d: Likewise. * gas/i386/opcode-suffix.d: Likewise. diff --git a/gas/testsuite/gas/elf/dwarf2-4.d b/gas/testsuite/gas/elf/dwarf2-4.d new file mode 100644 index 0000000..39e0326 --- /dev/null +++ b/gas/testsuite/gas/elf/dwarf2-4.d @@ -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. diff --git a/gas/testsuite/gas/elf/dwarf2-4.s b/gas/testsuite/gas/elf/dwarf2-4.s new file mode 100644 index 0000000..eeb4ace --- /dev/null +++ b/gas/testsuite/gas/elf/dwarf2-4.s @@ -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 diff --git a/gas/testsuite/gas/elf/elf.exp b/gas/testsuite/gas/elf/elf.exp index 7f86266..3828151 100644 --- a/gas/testsuite/gas/elf/elf.exp +++ b/gas/testsuite/gas/elf/elf.exp @@ -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" } diff --git a/gas/write.c b/gas/write.c index 018800e..aabb96d 100644 --- a/gas/write.c +++ b/gas/write.c @@ -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; |