| 2017-03-05 Alan Modra <amodra@gmail.com> |
| |
| * elf-bfd.h (struct eh_cie_fde): Add u.cie.per_encoding_aligned8. |
| * elf-eh-frame.c (size_of_output_cie_fde): Don't align here. |
| (next_cie_fde_offset): New function. |
| (_bfd_elf_parse_eh_frame): Set u.cie.per_encoding_aligned8. |
| (_bfd_elf_discard_section_eh_frame): Align zero terminator to |
| four bytes. Align CIEs to four or eight bytes depending on |
| per_encoding_aligned8. Align FDEs according to their encoding. |
| Pad last FDE to output section alignment. |
| (_bfd_elf_write_section_eh_frame): Adjust to suit. Remove |
| assertion. |
| * elf64-ppc.c (glink_eh_frame_cie): Delete padding. |
| (ppc64_elf_size_stubs): Pad glink eh_frame as per elf-eh-frame.c. |
| (ppc64_elf_finish_dynamic_sections): Adjust to suit. |
| |
| 2017-03-02 Martin Bickel <binutils@ineranves.de> |
| |
| PR ld/21212 |
| * elf.c (rewrite_elf_program_header): Do not issue a warning for |
| empty segments which have a zero filesz, but a non-zero memsz. |
| |
| 2017-03-02 Alan Modra <amodra@gmail.com> |
| |
| * elf32-ppc.c (ppc_elf_vle_split16): Correct insn mask typo. |
| |
| 2017-02-28 Alan Modra <amodra@gmail.com> |
| |
| * elf64-ppc.c (ppc64_elf_ha_reloc): Revert last change. |
| (ppc64_elf_relocate_section): Likewise. |
| |
| 2017-02-28 Alan Modra <amodra@gmail.com> |
| |
| PR 20995 |
| * elf32-nios2.c (nios2_elf32_relocate_section): Use htab |
| rather than elf32_nios2_hash_table or elf_hash_table. |
| (create_got_section): Likewise. |
| (nios2_elf32_finish_dynamic_symbol): Likewise. |
| (nios2_elf32_adjust_dynamic_symbol): Likewise. |
| (nios2_elf32_size_dynamic_sections): Likewise. |
| (nios2_elf32_check_relocs): Delete dynobj, sgot, and srelgot |
| vars. Use htab equivalents directly instead. Don't create |
| all dynamic sections on needing just the GOT. Use a goto |
| rather than a fall-through with reloc test. Ensure |
| htab->dynobj is set when making dynamic sreloc section. |
| (nios2_elf32_finish_dynamic_sections): Delete dynobj, use htab |
| equivalent directly instead. Don't segfault on looking for |
| .dynamic when dynamic sections have not been created. Don't |
| segfault on .got.plt being discarded. |
| (nios2_elf32_size_dynamic_sections): Delete plt and got vars. |
| Don't set "relocs" on .rela.plt. Do handle .sbss. Delete |
| fixme and another not so relevant comment. |
| (nios2_elf_add_symbol_hook): Delete dynobj var. If not |
| already set, set hash table dynobj on creating .sbss. |
| |
| 2017-02-28 Alan Modra <amodra@gmail.com> |
| |
| * reloc.c (BFD_RELOC_PPC_16DX_HA): New. |
| * elf64-ppc.c (ppc64_elf_howto_raw <R_PPC64_16DX_HA>): New howto. |
| (ppc64_elf_reloc_type_lookup): Translate new bfd reloc. |
| (ppc64_elf_ha_reloc): Correct overflow test on REL16DX_HA. |
| (ppc64_elf_relocate_section): Likewise. |
| * elf32-ppc.c (ppc_elf_howto_raw <R_PPC_16DX_HA>): New howto. |
| (ppc_elf_reloc_type_lookup): Translate new bfd reloc. |
| (ppc_elf_check_relocs): Handle R_PPC_16DX_HA to pacify gcc. |
| * libbfd.h: Regenerate. |
| * bfd-in2.h: Regenerate. |
| |
| 2017-02-28 Alan Modra <amodra@gmail.com> |
| |
| * elflink.c (_bfd_elf_create_dynamic_sections): Don't make |
| dynamic .data.rel.ro read-only. |
| * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Compare section |
| rather than section flags when deciding where copy reloc goes. |
| * elf32-cris.c (elf_cris_finish_dynamic_symbol): Likewise. |
| * elf32-hppa.c (elf32_hppa_finish_dynamic_symbol): Likewise. |
| * elf32-i386.c (elf_i386_finish_dynamic_symbol): Likewise. |
| * elf32-metag.c (elf_metag_finish_dynamic_symbol): Likewise. |
| * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): Likewise. |
| * elf32-nios2.c (nios2_elf32_finish_dynamic_symbol): Likewise. |
| * elf32-or1k.c (or1k_elf_finish_dynamic_symbol): Likewise. |
| * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Likewise. |
| * elf32-s390.c (elf_s390_finish_dynamic_symbol): Likewise. |
| * elf32-tic6x.c (elf32_tic6x_finish_dynamic_symbol): Likewise. |
| * elf32-tilepro.c (tilepro_elf_finish_dynamic_symbol): Likewise. |
| * elf64-ppc.c (ppc64_elf_finish_dynamic_symbol): Likewise. |
| * elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise. |
| * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise. |
| * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Likewise. |
| * elfnn-riscv.c (riscv_elf_finish_dynamic_symbol): Likewise. |
| * elfxx-mips.c (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise. |
| * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. |
| * elfxx-tilegx.c (tilegx_elf_finish_dynamic_symbol): Likewise. |
| |
| 2017-02-28 Maciej W. Rozycki <macro@imgtec.com> |
| |
| * elfxx-mips.c (mips_elf_perform_relocation): Also handle the |
| `jalr $0, $25' instruction encoding. |
| |
| 2017-02-27 Nick Clifton <nickc@redhat.com> |
| |
| PR ld/21180 |
| * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): Avoid |
| generating a seg-fault when encountering a symbol that has been |
| deleted by garbage collection. |
| |
| 2017-02-25 Alan Modra <amodra@gmail.com> |
| |
| * elf32-arc.c (struct dynamic_sections): Delete. |
| (enum dyn_section_types): Delete. |
| (dyn_section_names): Delete. |
| (arc_create_dynamic_sections): Delete. |
| (elf_arc_finish_dynamic_sections): Don't call the above. Don't |
| segfault on discarded .rela.plt section. |
| (elf_arc_size_dynamic_sections): Formatting. Don't call |
| arc_create_dynamic_sections. Don't allocate memory for sections |
| handled by the generic linker. Correct code finding relocs in |
| read-only sections. Set SEC_EXCLUDE on zero size .got, |
| .got.plt, and .dynbss sections. Do set .interp for pies. |
| |
| 2017-02-24 Andrew Waterman <andrew@sifive.com> |
| |
| * elfnn-riscv.c (GP_NAME): New macro. |
| (riscv_global_pointer_value): Use it. |
| (_bfd_riscv_relax_lui): If symbol and global pointer are in same |
| output section, consider only that section's alignment. |
| |
| 2017-02-23 Maciej W. Rozycki <macro@imgtec.com> |
| |
| * elfxx-mips.h (_bfd_mips_relax_section): Remove prototype. |
| * elfxx-mips.c (_bfd_mips_relax_section): Remove function. |
| * elf64-mips.c (bfd_elf64_bfd_relax_section): Remove macro. |
| * elfn32-mips.c (bfd_elf32_bfd_relax_section): Likewise. |
| |
| 2017-02-23 Maciej W. Rozycki <macro@imgtec.com> |
| |
| * elfxx-mips.c (mips_elf_calculate_relocation) <R_MIPS_JALR> |
| <R_MICROMIPS_JALR>: Discard relocation if `cross_mode_jump_p' |
| or misaligned. |
| |
| 2017-02-23 Alan Modra <amodra@gmail.com> |
| |
| PR 20744 |
| * elf32-ppc.c (ppc_elf_howto_raw): Correct dst_mask on all VLE |
| 16D relocations. |
| (ppc_elf_vle_split16): Correct field mask and shift for 16D relocs. |
| (ppc_elf_relocate_section): Correct calculation for VLE SDAREL |
| relocs. |
| |
| 2017-02-22 Maciej W. Rozycki <macro@imgtec.com> |
| |
| PR ld/20828 |
| * elflink.c (bfd_elf_size_dynamic_sections): Move symbol version |
| processing ahead of the call to `elf_gc_sweep_symbol'. |
| |
| 2017-02-22 Nick Clifton <nickc@redhat.com> |
| |
| PR binutils/21193 |
| * opncls.c (bfd_create_gnu_debuglink_section): Give the newly |
| created section 4-byte alignment. |
| |
| 2017-02-22 Alan Modra <amodra@gmail.com> |
| |
| * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Don't segfault |
| on .got or .plt output section being discarded by script. |
| * elf32-ppc.c (ppc_elf_finish_dynamic_sections): Likewise. Move |
| vxworks splt temp. |
| |
| 2017-02-21 Alan Modra <amodra@gmail.com> |
| |
| * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Only emit |
| DT_RELA, DT_RELASZ, and DT_RELAENT when DT_RELASZ is non-zero. |
| |
| 2017-02-20 Alan Modra <amodra@gmail.com> |
| |
| PR 21181 |
| * elflink.c (bfd_elf_final_link): Make DT_REL/DT_RELA zero |
| if DT_RELSZ/DT_RELASZ is zero. |
| |
| 2017-02-17 Nick Clifton <nickc@redhat.com> |
| |
| * compress.c (bfd_get_full_section_contents): Remember to reduce |
| compressed size by the sizeof the compression header when |
| decompressing the contents. |
| |
| 2017-02-17 Pedro Alves <palves@redhat.com> |
| |
| * srec.c (Chunk): Rename to ... |
| (_bfd_srec_len): ... this. |
| (S3Forced): Rename to ... |
| (_bfd_srec_forceS3): ... this. |
| * objcopy.c: Adjust all references. |
| |
| 2017-02-17 Pedro Alves <palves@redhat.com> |
| |
| * archive.c (bsd_write_armap): Rename to ... |
| (_bfd_bsd_write_armap): ... this. |
| (coff_write_armap): Rename to ... |
| (_bfd_coff_write_armap): ... this. |
| * libbfd-in.h (bsd_write_armap): Rename to ... |
| (_bfd_bsd_write_armap): ... this. |
| (coff_write_armap): Rename to ... |
| (_bfd_coff_write_armap): ... this. |
| * aout-target.h, aout-tic30.c: Adjust all users. |
| * libbfd.h: Regenerate. |
| |
| 2017-02-17 Pedro Alves <palves@redhat.com> |
| |
| * bfd-in.h (bfd_read, bfd_write): Adjust to rename. |
| (warn_deprecated): Rename to ... |
| (_bfd_warn_deprecated): ... this. |
| * libbfd.c (warn_deprecated): Rename to ... |
| (_bfd_warn_deprecated): ... this. |
| * bfd-in2.h: Regenerate. |
| |
| 2017-02-17 Pedro Alves <palves@redhat.com> |
| |
| * bfdio.c (real_ftell): Rename to ... |
| (_bfd_real_ftell): ... this. |
| (real_fseek): Rename to ... |
| (_bfd_real_fseek): ... this. |
| (real_fopen): Rename to ... |
| (_bfd_real_fopen): ... this. |
| * libbfd-in.h (real_ftell): Rename to ... |
| (_bfd_real_ftell): ... this. |
| (real_fseek): Rename to ... |
| (_bfd_real_fseek): ... this. |
| (real_fopen): Rename to ... |
| (_bfd_real_fopen): ... this. |
| * cache.c, dwarf2.c, opncls.c: Adjust all callers. |
| * libbfd.h: Regenerate. |
| |
| 2017-02-17 Pedro Alves <palves@redhat.com> |
| |
| * dwarf2.c, elf-attrs.c, elf32-nds32.c: Adjust all callers. |
| * libbfd.c (read_unsigned_leb128): Rename to ... |
| (_bfd_read_unsigned_leb128): ... this. |
| (read_signed_leb128): Rename to ... |
| (_bfd_read_signed_leb128): ... this. |
| (safe_read_leb128): Rename to ... |
| (_bfd_safe_read_leb128): ... this. |
| * libbfd-in.h (read_unsigned_leb128): Rename to ... |
| (_bfd_read_unsigned_leb128): ... this. |
| (read_signed_leb128): Rename to ... |
| (_bfd_read_signed_leb128): ... this. |
| (safe_read_leb128): Rename to ... |
| (_bfd_safe_read_leb128): ... this. |
| * libbfd.h: Renegerate. |
| |
| 2017-02-16 Andrew Burgess <andrew.burgess@embecosm.com> |
| |
| * dwarf2.c (_bfd_dwarf2_find_nearest_line): Perform symbol lookup |
| before trying to fine matching file and line information. |
| |
| 2017-02-16 Andrew Burgess <andrew.burgess@embecosm.com> |
| |
| * dwarf2.c (struct dwarf2_debug): Add orig_bfd member. |
| (_bfd_dwarf2_slurp_debug_info): If stashed debug information does |
| not match current bfd, then reload debug information. Record bfd |
| we're loading debug info for in the stash. If we have debug |
| informatin in the cache then perform section placement before |
| returning. |
| |
| 2017-02-16 Alan Modra <amodra@gmail.com> |
| |
| PR 21000 |
| * elf-bfd.h (struct elf_backend_data): Add no_page_alias. |
| * elfxx-target.h (elf_backend_no_page_alias): Define. |
| (elfNN_bed): Init new field. |
| * elf.c (assign_file_positions_for_load_sections): If no_page_alias |
| ensure PT_LOAD segment starts on a new page. |
| * elf32-hppa.c (elf_backend_no_page_alias): Define. |
| |
| 2017-02-16 Alan Modra <amodra@gmail.com> |
| |
| PR 21132 |
| * elf32-hppa.c (allocate_plt_static): Allocate space for relocs |
| if pic. |
| |
| 2017-02-16 Jiong Wang <jiong.wang@arm.com> |
| |
| * bfd.c (BFD_FLAGS_SAVED): Add BFD_LINKER_CREATED. |
| * bfd-in2.h: Regenerated. |
| |
| 2017-02-15 H.J. Lu <hongjiu.lu@intel.com> |
| |
| PR ld/21168 |
| * elf32-i386.c (elf_i386_relocate_section): Allow |
| "lea foo@GOT, %reg" in PIC. |
| |
| 2017-02-15 H.J. Lu <hongjiu.lu@intel.com> |
| |
| PR ld/20244 |
| * elf32-i386.c (elf_i386_relocate_section): Properly get IFUNC |
| symbol name when reporting R_386_GOT32/R_386_GOT32X relocation |
| error against local IFUNC symbol without a base register for |
| PIC. |
| |
| 2017-02-15 Maciej W. Rozycki <macro@imgtec.com> |
| |
| * elf32-ppc.c (ppc_elf_check_relocs): Use `%H:' rather than |
| `%P: %H:' with `info->callbacks->einfo'. |
| (ppc_elf_relocate_section): Likewise. |
| * elf64-ppc.c (ppc64_elf_check_relocs): Likewise. |
| (ppc64_elf_edit_toc): Likewise. |
| (ppc64_elf_relocate_section): Likewise. |
| |
| 2017-02-14 Alan Modra <amodra@gmail.com> |
| |
| * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Support |
| --gc-keep-exported, and test versioned field of sym rather than |
| looking for @ in name. |
| |
| 2017-02-13 Palmer Dabbelt <palmer@dabbelt.com> |
| |
| * elfnn-riscv.c (riscv_global_pointer_value): Change _gp to |
| __global_pointer$. |
| |
| 2017-02-13 Nick Clifton <nickc@redhat.com> |
| |
| PR binutils/21151 |
| * dwarf2.c (_bfd_dwarf2_find_nearest_line): Check for an invalid |
| unit length field. |
| |
| 2017-02-07 Andrew Waterman <andrew@sifive.com> |
| |
| * elfnn-riscv.c (riscv_elf_finish_dynamic_sections): Only write PLT |
| entry size if PLT header is written. |
| |
| 2017-02-06 Sheldon Lobo <sheldon.lobo@oracle.com> |
| |
| Fix sparc64 dynamic relocation processing to use the dynamic |
| symbol count. |
| * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Use 'dynamic' |
| to determine if bfd_get_symcount() or bfd_get_dynamic_symcount() |
| should be used. |
| |
| 2017-02-03 Nick Clifton <nickc@redhat.com> |
| |
| PR 21096 |
| * coffcode.h (coff_write_object_contents): Enlarge size of |
| s_name_buf in order to avoid compile time warning about possible |
| integer truncation. |
| * elf32-nds32.c (nds32_elf_ex9_import_table): Mask off lower |
| 32-bits of insn value before printing into buffer. |
| |
| 2017-02-02 Maciej W. Rozycki <macro@imgtec.com> |
| |
| * elfxx-mips.c (mips_elf_hash_sort_data): Add |
| `max_local_dynindx'. |
| (mips_elf_sort_hash_table): Handle it. |
| (mips_elf_sort_hash_table_f) <GGA_NONE>: For forced local |
| symbols bump up `max_local_dynindx' rather than |
| `max_non_got_dynindx'. |
| |
| 2017-02-02 Maciej W. Rozycki <macro@imgtec.com> |
| |
| * elfxx-mips.c (mips_elf_hash_sort_data): Convert the |
| `min_got_dynindx', `max_unref_got_dynindx' and |
| `max_non_got_dynindx' members to the `bfd_size_type' data type. |
| (mips_elf_sort_hash_table): Adjust accordingly. |
| |
| 2017-02-02 Maciej W. Rozycki <macro@imgtec.com> |
| |
| * elfxx-mips.c (mips_elf_sort_hash_table): Use `htab' throughout |
| to access the hash table. |
| |
| 2017-02-02 Maciej W. Rozycki <macro@imgtec.com> |
| |
| * elfxx-mips.c (mips_elf_sort_hash_table): Move assertion on |
| non-NULL `htab' to the beginning. |
| |
| 2017-02-02 Maciej W. Rozycki <macro@imgtec.com> |
| |
| * elflink.c (elf_gc_sweep): Wrap overlong line. |
| |
| 2017-01-30 Maciej W. Rozycki <macro@imgtec.com> |
| |
| * elfxx-mips.h (_bfd_mips_elf_insn32): Rename prototype to... |
| (_bfd_mips_elf_linker_flags): ... this. Add another parameter. |
| * elfxx-mips.c (mips_elf_link_hash_table): Add |
| `ignore_branch_isa' member. |
| (mips_elf_perform_relocation): Do not treat an ISA mode mismatch |
| in branch relocation calculation as an error if |
| `ignore_branch_isa' has been set. |
| (_bfd_mips_elf_insn32): Rename to... |
| (_bfd_mips_elf_linker_flags): ... this. Rename the `on' |
| parameter to `insn32' and add an `ignore_branch_isa' parameter. |
| Handle the new parameter. |
| |
| 2017-01-27 Hans-Peter Nilsson <hp@axis.com> |
| |
| * elf32-cris.c (elf_cris_finish_dynamic_symbol): Remove now unused |
| local variable dynobj. |
| |
| PR ld/20995 |
| * elf32-cris.c (elf_cris_size_dynamic_sections): Handle sdynrelro. |
| (elf_cris_adjust_dynamic_symbol): Place variables copied into the |
| executable from read-only sections into sdynrelro. |
| (elf_cris_finish_dynamic_symbol): Select sreldynrelro for |
| dynamic relocs in sdynrelro. |
| (elf_backend_want_dynrelro): Define. |
| |
| 2017-01-25 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| * config.bfd (*-*-rtemsaout*): Mark as removed. |
| |
| 2017-01-25 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| * config.bfd (powerpcle-*-rtems*): Do not mark as removed. |
| (arm-*-rtems*): Move to (arm*-*-eabi*). |
| (i[3-7]86-*-rtems*): Move to (i[3-7]86-*-elf*). |
| (m68-*-rtems*): Move to (m68*-*-elf*). |
| |
| 2017-01-25 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| * config.bfd (*-*-rtemscoff*): Mark as removed. |
| |
| 2017-01-24 Maciej W. Rozycki <macro@imgtec.com> |
| |
| PR ld/20828 |
| * elflink.c (bfd_elf_record_link_assignment): Revert last |
| change and don't ever clear `forced_local'. Set `mark' |
| unconditionally. |
| (elf_gc_sweep_symbol_info, elf_gc_sweep_symbol): Reorder within |
| file. |
| (elf_gc_sweep): Move the call to `elf_gc_sweep_symbol'... |
| (bfd_elf_size_dynamic_sections): ... here. |
| * elf32-ppc.c (ppc_elf_tls_setup): Don't clear `forced_local' |
| and set `mark' instead in `__tls_get_addr_opt' processing. |
| * elf64-ppc.c (ppc64_elf_tls_setup): Likewise. |
| |
| 2017-01-24 Alan Modra <amodra@gmail.com> |
| |
| * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Merge two cases |
| where dynamic relocs are preferable. Allow ifunc too. |
| (ensure_undefweak_dynamic): New function. |
| (allocate_dynrelocs): Use it here. Move plt handling last and |
| don't make symbols dynamic, simplifying loop. Only make undef |
| weak symbols with GOT entries dynamic. Correct condition |
| for GOT relocs. Handle dynamic relocs on ifuncs. Correct |
| comments. Remove goto. |
| (ppc_elf_relocate_section): Correct test for using dynamic |
| symbol on GOT relocs. Rearrange test for emitting GOT relocs |
| to suit. Set up explicit tls_index entries and implicit GOT |
| tls_index entries resolvable at link time for |
| __tls_get_addr_opt. Simplify test to clear mem for prelink. |
| * elf64-ppc.c (allocate_got): Correct condition for GOT relocs. |
| (ensure_undefweak_dynamic): New function. |
| (allocate_dynrelocs): Use it here. Only make undef weak symbols |
| with GOT entries dynamic. Remove unnecessary test of |
| WILL_CALL_FINISH_DYNAMIC_SYMBOL in PLT handling. |
| (ppc64_elf_relocate_section): Correct test for using dynamic |
| symbol on GOT relocs. Rearrange test for emitting GOT relocs |
| to suit. Set up explicit tls_index entries and implicit GOT |
| tls_index entries resolvable at link time for __tls_get_addr_opt. |
| Simplify expression to clear mem for prelink. |
| |
| 2017-01-23 Yury Norov <ynorov@caviumnetworks.com> |
| |
| * elfnn-aarch64.c: Fix relaxations for ILP32 mode. |
| |
| 2017-01-20 Jiong Wang <jiong.wang@arm.com> |
| |
| * elfnn-aarch64.c (elf_aarch64_hash_symbol): New function. |
| (elf_backend_hash_symbol): Define. |
| |
| 2017-01-18 Maciej W. Rozycki <macro@imgtec.com> |
| |
| PR ld/20828 |
| * elflink.c (bfd_elf_record_link_assignment): Clear any |
| `forced_local' marking for DSO symbols that are not being |
| provided. |
| |
| 2017-01-17 Kuan-Lin Chen <kuanlinchentw@gmail.com> |
| |
| * elfnn-riscv.c (riscv_elf_object_p): New function. |
| |
| 2017-01-12 H.J. Lu <hongjiu.lu@intel.com> |
| |
| PR ld/21038 |
| * elf64-x86-64.c (elf_x86_64_link_hash_table): Add |
| plt_bnd_eh_frame. |
| (elf_x86_64_check_relocs): Create .eh_frame section for the |
| .plt.bnd section. |
| (elf_x86_64_size_dynamic_sections): Allocate and initialize |
| .eh_frame section for the .plt.bnd section. |
| (elf_x86_64_finish_dynamic_sections): Adjust .eh_frame section |
| for the .plt.bnd section. |
| |
| 2017-01-12 Nick Clifton <nickc@redhat.com> |
| |
| PR binutils/20876 |
| * opncls.c (find_separate_debug_file): Add include_dirs |
| parameter. Only include the directory part of the bfd's filename |
| in search paths if include_dirs is true. Add a couple of extra |
| locations for looking for debug files. |
| ( bfd_follow_gnu_debuglink): Update invocation of |
| find_separate_debug_file. |
| (bfd_follow_gnu_debugaltlink): Likewise. |
| (get_build_id): New function: Finds the build-id of the given bfd. |
| (get_build_id_name): New function: Computes the name of the |
| separate debug info file for a bfd, based upon its build-id. |
| (check_build_id_file): New function: Checks to see if a separate |
| debug info file exists at the given location, and that its |
| build-id matches that of the original bfd. |
| (bfd_follow_build_id_debuglink): New function: Finds a separate |
| debug info file for a given bfd by using the build-id method. |
| * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Try using the build-id |
| method of locating a separate debug info file before using the |
| debuglink method. |
| * bfd-in2.h: Regenerate. |
| |
| 2017-01-11 H.J. Lu <hongjiu.lu@intel.com> |
| |
| PR ld/21038 |
| * elf64-x86-64.c (elf_x86_64_eh_frame_bnd_plt): New. |
| (elf_x86_64_bnd_arch_bed): Use elf_x86_64_eh_frame_bnd_plt and |
| elf_x86_64_eh_frame_plt_got. |
| (elf_x86_64_size_dynamic_sections): Get unwind info from |
| elf_x86_64_bnd_arch_bed for the BND PLT. |
| |
| 2017-01-11 Jeremy Soller <jackpot51@gmail.com> |
| |
| * config.bfd: Add entries for i686-redox and x86_64-redox. |
| |
| 2017-01-10 H.J. Lu <hongjiu.lu@intel.com> |
| |
| * elf32-i386.c (elf_i386_check_relocs): Align .eh_frame section |
| to 4 bytes. |
| * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Align |
| .eh_frame section to 4 bytes for x32. |
| (elf_x86_64_check_relocs): Likewise. |
| |
| 2017-01-10 H.J. Lu <hongjiu.lu@intel.com> |
| |
| PR ld/20830 |
| * elf32-i386.c (elf_i386_eh_frame_plt_got): New. |
| (PLT_GOT_FDE_LENGTH): Likewise. |
| (elf_i386_plt_layout): Add eh_frame_plt_got and |
| eh_frame_plt_got_size. |
| (elf_i386_plt): Updated. |
| (elf_i386_link_hash_table): Add plt_got_eh_frame. |
| (elf_i386_check_relocs): Create .eh_frame section for .plt.got. |
| (elf_i386_size_dynamic_sections): Allocate and initialize |
| .eh_frame section for .plt.got. |
| (elf_i386_finish_dynamic_sections): Adjust .eh_frame section for |
| .plt.got. |
| (elf_i386_nacl_plt): Add FIXME for eh_frame_plt_got and |
| eh_frame_plt_got_size. |
| * elf64-x86-64.c (elf_x86_64_eh_frame_plt_got): New. |
| (PLT_GOT_FDE_LENGTH): Likewise. |
| (elf_x86_64_backend_data): Add eh_frame_plt_got and |
| eh_frame_plt_got_size. |
| (elf_x86_64_arch_bed): Updated. |
| (elf_x86_64_bnd_arch_bed): Add FIXME for eh_frame_plt_got and |
| eh_frame_plt_got_size. |
| (elf_x86_64_nacl_arch_bed): Likewise. |
| (elf_x86_64_link_hash_table): Add plt_got_eh_frame. |
| (elf_x86_64_check_relocs): Create .eh_frame section for .plt.got. |
| (elf_x86_64_size_dynamic_sections): Allocate and initialize |
| .eh_frame section for .plt.got. |
| (elf_x86_64_finish_dynamic_sections): Adjust .eh_frame section |
| for .plt.got. |
| |
| 2017-01-10 H.J. Lu <hongjiu.lu@intel.com> |
| |
| * elf32-i386.c (elf_i386_size_dynamic_sections): Set |
| plt_eh_frame->size to eh_frame_plt_size and use eh_frame_plt. |
| |
| 2017-01-09 Nick Clifton <nickc@redhat.com> |
| |
| * dwarf2.c (lookup_address_in_function_table): Return early if |
| there are no functions in the given comp unit, or if the high |
| address of the last function in the comp unit is less than the |
| desired address. |
| |
| 2017-01-09 Nick Clifton <nickc@redhat.com> |
| |
| PR binutils/21013 |
| * coffgen.c (_bfd_coff_get_external_symbols): Generate an error |
| message if there are too many symbols to load. |
| |
| 2017-01-04 James Clarke <jrtc27@jrtc27.com> |
| |
| * elf64-alpha.c (elf64_alpha_relax_opt_call): Don't set tsec_free |
| if relocs are cached. |
| |
| 2017-01-03 Rich Felker <bugdal@aerifal.cx> |
| |
| PR ld/21017 |
| * elf32-microblaze.c (microblaze_elf_check_relocs): Add an entry |
| for R_MICROBLAZE_GOTOFF_64. |
| |
| 2017-01-03 Nick Clifton <nickc@redhat.com> |
| |
| * mach-o.c (bfd_mach_o_lookup_uuid_command): Fix compile time |
| warning about using a possibly uninitialised variable. |
| |
| 2017-01-02 Alan Modra <amodra@gmail.com> |
| |
| * elf32-hppa.c (ensure_undef_weak_dynamic): New function. |
| (allocate_plt_static, allocate_dynrelocs): Use it. |
| |
| 2017-01-02 Alan Modra <amodra@gmail.com> |
| |
| * elf-hppa.h (elf_hppa_fake_sections): Set SHF_INFO_LINK for |
| .PARISC.unwind section. |
| |
| 2017-01-02 Alan Modra <amodra@gmail.com> |
| |
| PR ld/20989 |
| * elfxx-sparc.c (gdop_relative_offset_ok): New function. |
| (_bfd_sparc_elf_relocate_section): Use it to validate GOT |
| indirect to GOT pointer relative code edit. |
| |
| 2017-01-02 Alan Modra <amodra@gmail.com> |
| |
| Update year range in copyright notice of all files. |
| |
| For older changes see ChangeLog-2016 |
| |
| Copyright (C) 2017 Free Software Foundation, Inc. |
| |
| Copying and distribution of this file, with or without modification, |
| are permitted in any medium without royalty provided the copyright |
| notice and this notice are preserved. |
| |
| Local Variables: |
| mode: change-log |
| left-margin: 8 |
| fill-column: 74 |
| version-control: never |
| End: |