summaryrefslogtreecommitdiff
path: root/gas/write.c
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2011-01-18 18:55:58 +0000
committerH.J. Lu <hjl.tools@gmail.com>2011-01-18 18:55:58 +0000
commit62b3d97d4c7ff601bfc625ef6639908fab4eba27 (patch)
treefcd35dabd32712bbaa2f954f9fc3461ec91fb39e /gas/write.c
parent39da3aaf886927a67633d9eb5c9fcd4049c2b55f (diff)
downloadbinutils-redhat-62b3d97d4c7ff601bfc625ef6639908fab4eba27.tar.gz
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/write.c')
-rw-r--r--gas/write.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gas/write.c b/gas/write.c
index 018800e075..aabb96d236 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;