diff options
author | Richard Sandiford <rsandifo@nildram.co.uk> | 2010-02-08 20:00:54 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@nildram.co.uk> | 2010-02-08 20:00:54 +0000 |
commit | a98c2c6d6b1e90e96b6819f761e69cf29c3a4ead (patch) | |
tree | 1f2ec4527c5a3c2b0446852103136a14174cebdb | |
parent | 7052322994cb582ecdd3fa91cade93405198be3d (diff) | |
download | binutils-redhat-a98c2c6d6b1e90e96b6819f761e69cf29c3a4ead.tar.gz |
bfd/
* xcofflink.c (_bfd_xcoff_bfd_final_link): When calculating
max_contents_size, only consider sections whose contents must
be swapped in.
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/xcofflink.c | 11 |
2 files changed, 13 insertions, 4 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 45c5784934..7aecf51223 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2010-02-08 Richard Sandiford <r.sandiford@uk.ibm.com> + + * xcofflink.c (_bfd_xcoff_bfd_final_link): When calculating + max_contents_size, only consider sections whose contents must + be swapped in. + 2010-02-09 Alan Modra <amodra@gmail.com> * elf64-ppc.c (allocate_dynrelocs): Remove unused got structs here.. diff --git a/bfd/xcofflink.c b/bfd/xcofflink.c index 118fcf2e29..8198e93c20 100644 --- a/bfd/xcofflink.c +++ b/bfd/xcofflink.c @@ -5872,10 +5872,13 @@ _bfd_xcoff_bfd_final_link (bfd *abfd, struct bfd_link_info *info) o->reloc_count += sec->reloc_count; - if (sec->rawsize > max_contents_size) - max_contents_size = sec->rawsize; - if (sec->size > max_contents_size) - max_contents_size = sec->size; + if ((sec->flags & SEC_IN_MEMORY) == 0) + { + if (sec->rawsize > max_contents_size) + max_contents_size = sec->rawsize; + if (sec->size > max_contents_size) + max_contents_size = sec->size; + } if (coff_section_data (sec->owner, sec) != NULL && xcoff_section_data (sec->owner, sec) != NULL && (xcoff_section_data (sec->owner, sec)->lineno_count |