summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2013-10-17 10:05:38 +0000
committerAlan Modra <amodra@bigpond.net.au>2013-10-17 10:05:38 +0000
commit3b1c2e9a86a722fa8c770bbf2dfcc9c20ee1d41f (patch)
treef7361d2fe5c7b6f7c82c757f7e04852c286ae5cf
parent82878411a4fd3eb1d8c17a9e819eae1a45d2a651 (diff)
downloadbinutils-redhat-3b1c2e9a86a722fa8c770bbf2dfcc9c20ee1d41f.tar.gz
PR 16056
* elf.c (copy_elf_program_header): Only consider SEC_ALLOC sections when finding lowest_section.
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/elf.c5
2 files changed, 9 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index f9a0575bef..1f9b698961 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2013-10-17 Alan Modra <amodra@gmail.com>
+
+ PR 16056
+ * elf.c (copy_elf_program_header): Only consider SEC_ALLOC sections
+ when finding lowest_section.
+
2013-10-14 Chao-ying Fu <Chao-ying.Fu@imgtec.com>
* elfxx-mips.c (mips_elf_obj_tdata): Add abi_msa_bfd.
diff --git a/bfd/elf.c b/bfd/elf.c
index bf05ae0a80..8df38ee379 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -6226,12 +6226,13 @@ copy_elf_program_header (bfd *ibfd, bfd *obfd)
if (ELF_SECTION_IN_SEGMENT (this_hdr, segment))
{
map->sections[isec++] = section->output_section;
- if (section->lma < lowest_section->lma)
- lowest_section = section;
if ((section->flags & SEC_ALLOC) != 0)
{
bfd_vma seg_off;
+ if (section->lma < lowest_section->lma)
+ lowest_section = section;
+
/* Section lmas are set up from PT_LOAD header
p_paddr in _bfd_elf_make_section_from_shdr.
If this header has a p_paddr that disagrees