PR ld/13909
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 270b83a73dd5d9915ddd20c7c8a4d1ea9feff621..2165cd8c160235ca598e8b91853ebd349cb4790e 100644 (file)
@@ -1,3 +1,74 @@
+2012-05-25  Alan Modra  <amodra@gmail.com>
+
+       PR ld/13909
+       * elf-eh-frame.c (_bfd_elf_eh_frame_present): New function.
+       (_bfd_elf_maybe_strip_eh_frame_hdr): Use it here.
+       * elf-bfd.h (_bfd_elf_eh_frame_present): Declare.
+       * elflink.c (bfd_elf_size_dynamic_sections): Let the backend
+       size dynamic sections before stripping eh_frame_hdr.
+       (bfd_elf_gc_sections): Handle multiple .eh_frame sections.
+       * elf32-ppc.c (ppc_elf_size_dynamic_sections): Drop glink_eh_frame
+       if no other .eh_frame sections exist.
+       * elf64-ppc.c (ppc64_elf_size_stubs): Likewise.
+       * elf32-i386.c (elf_i386_create_dynamic_sections): Don't size
+       or alloc plt_eh_frame here..
+       (elf_i386_size_dynamic_sections): ..do it here instead.  Don't
+       specially keep sgotplt, iplt, tgotplt, sdynbss for symbols.
+       (elf_i386_finish_dynamic_sections): Check plt_eh_frame->contents
+       before writing plt offset.
+       * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Don't size
+       or alloc plt_eh_frame here..
+       (elf_x86_64_size_dynamic_sections): ..do it here instead.
+       (elf_x86_64_finish_dynamic_sections): Check plt_eh_frame->contents
+       before writing plt offset.
+
+2012-05-24  Alan Modra  <amodra@gmail.com>
+
+       PR ld/14158
+       * elf64-ppc.c (ppc64_elf_size_stubs): Round up glink_eh_frame
+       size to output section alignment.
+       (ppc64_elf_build_stubs): Likewise, and extend last FDE to cover.
+
+2012-05-23  Alan Modra  <amodra@gmail.com>
+
+       * elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Handle
+        BFDs with multiple .eh_frame sections.
+
+2012-05-23  Alan Modra  <amodra@gmail.com>
+
+       PR ld/13909
+       * elflink.c (bfd_elf_discard_info): Don't ignore dynamic BFDs.
+
+2012-05-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/13909
+       * elf32-i386.c (elf_i386_create_dynamic_sections): Revert the
+       last change.
+       * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
+
+2012-05-22  Alan Modra  <amodra@gmail.com>
+
+       * elflink.c (bfd_elf_discard_info): Look for next .eh_frame if
+       first one is zero size or discarded.
+       * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set most of
+       glink_eh_frame contents here..
+       (ppc_elf_finish_dynamic_sections): ..rather than here.  Just set
+       offset to .glink.
+
+2012-05-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/13909
+       * elf32-i386.c (elf_i386_create_dynamic_sections): Create PLT
+       eh_frame section if there is an input .eh_frame section.
+       * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
+
+2012-05-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/14105
+       * elf32-i386.c (elf_i386_create_dynamic_sections): Always
+       create PLT eh_frame section with SEC_LINKER_CREATED.
+       * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
+
 2012-05-22  Alan Modra  <amodra@gmail.com>
 
        * elflink.c (bfd_elf_discard_info): Handle multiple .eh_frame
This page took 0.027403 seconds and 4 git commands to generate.