Fixes for the magic number used in PDP11 AOUT binaries.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index d11421f6a2fcf7ff2fe6e350b91e4e2e98c3c229..0ef3b2faefd37a532d1ecfe98e48b8892fd2e4a3 100644 (file)
@@ -1,3 +1,110 @@
+2020-04-14  Stephen Casner  <casner@acm.org>
+
+       PR ld/25677
+       * pdp11.c: Add implementation of --imagic option.
+       (adjust_o_magic): Fix objcopy --extract-symbol test.
+       * libaout.h (enum aout_magic): Add i_magic.
+
+2020-04-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+           Nick Clifton  <nickc@redhat.com>
+
+       * elf32-sparc.c (sparc_final_write_processing): Fix whitespace.
+       <0>: Ignore.
+       <default>: Error rather than abort.
+
+2020-04-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/25767
+       * elf.c (_bfd_elf_fixup_group_sections): Remove zero-sized
+       relocation section from section group.
+
+2020-04-02  Jan W. Jagersma  <jwjagersma@gmail.com>
+
+       * bfdio.c (bfd_bread, bfd_tell, bfd_seek, bfd_mmap): Always add
+       bfd->origin to file offset.
+       * bfdwin.c (bfd_get_file_window): Likewise.
+       * bfd.c: Clarify the use of the bfd->origin field.
+       * bfd-in2.h: Regenerate.
+       * coff-i386.c: Don't include go32exe.h. Allow overriding
+       coff_write_object_contents via COFF_WRITE_CONTENTS.
+       * coff-stgo32.c (go32exe_cleanup, go32exe_mkobject)
+       (go32exe_write_object_contents): New functions.
+       (go32exe_temp_stub, go32exe_temp_stub_size): New static globals.
+       (COFF_WRITE_CONTENTS, GO32EXE_DEFAULT_STUB_SIZE): Define.
+       (create_go32_stub): Remove check for 2k size limit.  Read stub
+       from go32exe_temp_stub if present.
+       (go32_stubbed_coff_bfd_copy_private_bfd_data): Allocate and
+       copy variable-length stub.
+       (go32_check_format): Read stub to go32exe_temp_stub, set
+       origin, return go32exe_cleanup.
+       (adjust_filehdr_in_post, adjust_filehdr_out_pre)
+       (adjust_filehdr_out_post, adjust_scnhdr_in_post)
+       (adjust_scnhdr_out_pre, adjust_scnhdr_out_post)
+       (adjust_aux_in_post, adjust_aux_out_pre, adjust_aux_out_post):
+       Remove functions and their associated #defines.
+       * coffcode.h (coff_mkobject_hook): Remove stub copying code.
+       * libcoff-in.h: (struct coff_tdata): New field stub_size.
+       Rename field go32stub to stub.
+       * libcoff.h: Regenerate.
+       * coff-stgo32.c (go32_check_format): Rename to...
+       (go32exe_check_format): ...this.
+       (go32_stubbed_coff_bfd_copy_private_bfd_data): Rename to...
+       (go32exe_copy_private_bfd_data): ...this.
+       (stub_bytes): Rename to...
+       (go32exe_default_stub): ...this.
+       (create_go32_stub): Rename to...
+       (go32exe_create_stub): ...this.
+       * coff-stgo32.c (go32exe_copy_private_bfd_data): Avoid realloc
+       when possible.
+
+2020-04-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/25749
+       PR ld/25754
+       * elf32-i386.c (elf_i386_convert_load_reloc): Convert load
+       relocation to R_386_32 for relocation against non-preemptible
+       absolute symbol.
+       (elf_i386_check_relocs): Call _bfd_elf_x86_valid_reloc_p.  Don't
+       allocate dynamic relocation for non-preemptible absolute symbol.
+       (elf_i386_relocate_section): Pass sec to
+       GENERATE_DYNAMIC_RELOCATION_P.
+       * elf64-x86-64.c (R_X86_64_converted_reloc_bit): Moved.
+       (elf_x86_64_convert_load_reloc): Covert load relocation to
+       R_X86_64_32S or R_X86_64_32 for relocation against non-preemptible
+       absolute symbol.  Don't convert to R_X86_64_32S nor R_X86_64_32
+       for non-preemptible absolute symbol if they overflow.
+       (elf_x86_64_check_relocs): Call _bfd_elf_x86_valid_reloc_p.  Set
+       tls_type for GOT slot to GOT_ABS for non-preemptible absolute
+       symbol.  Don't allocate dynamic relocation for non-preemptible
+       absolute symbol.
+       (elf_x86_64_relocate_section): Don't generate relative relocation
+       for GOTPCREL relocations aganst local absolute symbol.  Pass sec
+       to GENERATE_DYNAMIC_RELOCATION_P.
+       * elfxx-x86.c (elf_x86_allocate_dynrelocs): No dynamic relocation
+       against non-preemptible absolute symbol.
+       (_bfd_elf_x86_valid_reloc_p): New function.
+       (_bfd_x86_elf_size_dynamic_sections): No dynamic relocation for
+       GOT_ABS GOT slot.
+       * elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): Add an SEC
+       argument.  Don't generate dynamic relocation against
+       non-preemptible absolute symbol.
+       (ABS_SYMBOL_P): New.
+       (GENERATE_RELATIVE_RELOC_P): Don't generate relative relocation
+       against non-preemptible absolute symbol.
+       (GOT_ABS): New.
+       (R_X86_64_converted_reloc_bit): New.  Moved from elf64-x86-64.c.
+       (_bfd_elf_x86_valid_reloc_p): New.
+
+2020-04-01  Tamar Christina  <tamar.christina@arm.com>
+
+       PR ld/16017
+       * elf32-arm.c (elf32_arm_populate_plt_entry): Set LSB of the PLT0
+       address in the GOT if in thumb only mode.
+
+2020-04-01  Tamar Christina  <tamar.christina@arm.com>
+
+       * elf32-arm.c (elf32_thumb2_plt_entry): Fix PC-rel offset.
+
 2020-04-01  Hans-Peter Nilsson  <hp@bitrange.com>
 
        * mmo.c (mmo_scan): Create .text section only when needed, not
This page took 0.023774 seconds and 4 git commands to generate.