Browse Source

PR31208, strip can break ELF alignment requirements

In https://sourceware.org/pipermail/binutils/2007-August/053261.html
(git commit 3dea8fca8b) I disabled a then new linker feature that
removed empty PT_LOAD headers in cases where a user specified program
headers, and for objcopy.  This can be a problem for objcopy/strip and
since objcopy operates on sections, any part of a PT_LOAD loading file
contents not covered by a section will be omitted anyway.

	PR 31208
	* elf.c (_bfd_elf_map_sections_to_segments): Pass remove_empty_load
	as true to elf_modify_segment_map for objcopy/strip.
master
Alan Modra 2 years ago
parent
commit
7f26d260ef
  1. 2
      bfd/elf.c

2
bfd/elf.c

@ -5789,7 +5789,7 @@ _bfd_elf_map_sections_to_segments (bfd *abfd,
elf_seg_map (abfd) = mfirst;
}
if (!elf_modify_segment_map (abfd, info, no_user_phdrs))
if (!elf_modify_segment_map (abfd, info, no_user_phdrs || info == NULL))
return false;
for (count = 0, m = elf_seg_map (abfd); m != NULL; m = m->next)

Loading…
Cancel
Save