X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=bfd%2FChangeLog;h=adba80c83847b7d9802fc09d9a96fe0eb9467ef3;hb=30ce8e47fad9b057b6d7af9e1d43061126d34d20;hp=67858c7538b11e5f6f073fb0686827ab6620eecb;hpb=6b5e16ffd3e8886fa3fb90d63e3200fcc373848e;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 67858c7538..adba80c838 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,634 @@ +2020-04-22 Max Filippov + + PR ld/25861 + * bfd-in2.h: Regenerated. + * elf32-xtensa.c (elf_howto_table): New entries for + R_XTENSA_PDIFF{8,16,32} and R_XTENSA_NDIFF{8,16,32}. + (elf_xtensa_reloc_type_lookup, elf_xtensa_do_reloc) + (relax_section): Add cases for R_XTENSA_PDIFF{8,16,32} and + R_XTENSA_NDIFF{8,16,32}. + * libbfd.h (bfd_reloc_code_real_names): Add names for + BFD_RELOC_XTENSA_PDIFF{8,16,32} and + BFD_RELOC_XTENSA_NDIFF{8,16,32}. + * reloc.c: Add documentation for BFD_RELOC_XTENSA_PDIFF{8,16,32} + and BFD_RELOC_XTENSA_NDIFF{8,16,32}. + +2020-04-21 Tamar Christina + + PR binutils/24753 + * compress.c (bfd_get_full_section_contents): Exclude sections with no + content. + +2020-04-21 H.J. Lu + + PR ld/25849 + * elf-bfd.h (elf_backend_data): Add + elf_backend_strip_zero_sized_dynamic_sections. + (_bfd_elf_strip_zero_sized_dynamic_sections): New prototype. + * elf64-alpha.c (elf_backend_strip_zero_sized_dynamic_sections): + New macro. + * elflink.c (_bfd_elf_strip_zero_sized_dynamic_sections): New + function. + * elfxx-target.h (elf_backend_strip_zero_sized_dynamic_sections): + New macro. + (elfNN_bed): Add elf_backend_strip_zero_sized_dynamic_sections. + +2020-04-21 H.J. Lu + + * elf64-alpha.c (alpha_elf_reloc_entry): Replace reltext with + sec. + (elf64_alpha_check_relocs): Set sec instead of reltext. Warn + DT_TEXTREL with -M. + (elf64_alpha_calc_dynrel_sizes): Warn DT_TEXTREL with -M. + +2020-04-21 Nick Clifton + + * po/sr.po: Updated Serbian translation. + +2020-04-21 Alan Modra + + * elf32-sh.c (sh_elf_relocate_section): Remove STO_SH5_ISA32 + processing. + +2020-04-20 Stephen Casner + + * pdp11.c (N_STAB): Modify value to avoid conflict with N_EXT + causing globals from linker script to be treated as debug symbols. + (translate_symbol_table): Don't sign-extend symbol values from 16 + to 64 bits in nm output. + +2020-04-20 Alan Modra + + * elf64-ppc.c (ppc64_elf_size_stubs): Strip relbrlt too. + +2020-04-18 Alan Modra + + * section.c (bfd_is_const_section): Correct test for special + sections. + * bfd-in2.h: Regenerate. + +2020-04-17 Alan Modra + + PR 25842 + * elf.c (_bfd_elf_get_symbol_version_string): Don't segfault on + NULL nodename. + +2020-04-16 Nick Clifton + + PR 25803 + * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Replace an + abort with a more helpful error message. + +2020-04-16 Alan Modra + + PR 25827 + * dwarf2.c (scan_unit_for_symbols): Wrap overlong lines. Don't + strdup(0). + +2020-04-15 Fangrui Song + + PR binutils/24613 + * coff-rs6000.c (xcoff_ppc_relocate_section): Change RM_GENERATE_ERROR + to RM_DIAGNOSE plus a check of warn_unresolved_syms. + * coff64-rs6000.c (xcoff_ppc_relocate_section): Likewise. + * elf-bfd.h (_bfd_elf_large_com_section): Likewise. + * elf32-m32r.c (m32r_elf_relocate_section): Likewise. + * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise. + * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise. + * elf32-sh.c (sh_elf_relocate_section): Likewise. + * elf32-spu.c (spu_elf_relocate_section): Likewise. + * elf64-hppa.c (elf64_hppa_relocate_section): Likewise. + * elflink.c (elf_link_output_extsym): Likewise. + * elfxx-mips.c (mips_elf_calculate_relocation): Likewise. + +2020-04-15 Alan Modra + + PR 25823 + * peXXigen.c (_bfd_XXi_swap_sym_in ): Don't use a + pointer into strings that may be freed for section name, always + allocate a new string. + +2020-04-14 Juan Manuel Guerrero + Jan W. Jagersma + + * coff-go32.c (COFF_GO32, IMAGE_SCN_LNK_NRELOC_OVFL) + (coff_SWAP_scnhdr_in, coff_SWAP_scnhdr_out): Define. + (_bfd_go32_swap_scnhdr_in, _bfd_go32_swap_scnhdr_out) + (_bfd_go32_mkobject): New functions. + * coff-stgo32.c (IMAGE_SCN_LNK_NRELOC_OVFL) + (coff_SWAP_scnhdr_in, coff_SWAP_scnhdr_out): Define. + (go32exe_mkobject): Call _bfd_go32_mkobject. + * coffcode.h (COFF_WITH_EXTENDED_RELOC_COUNTER): Define. + (coff_set_alignment_hook): Define function for COFF_GO32_EXE + and COFF_GO32. + (coff_write_relocs): Enable extended reloc counter code if + COFF_WITH_EXTENDED_RELOC_COUNTER is defined. Test for obj_go32. + (coff_write_object_contents): Likewise. Pad section headers + for COFF_GO32 and COFF_GO32EXE. Use bfd_coff_swap_scnhdr_out + instead of coff_swap_scnhdr_out. + * cofflink.c (_bfd_coff_final_link): Test also for obj_go32 to + enable extended reloc counter. + * coffswap.h: (coff_swap_scnhdr_in, coff_swap_scnhdr_out): + Declare with ATTRIBUTE_UNUSED. + * libcoff-in.h: (struct coff_tdata): New field go32. + (obj_go32): Define. + * libcoff.h: Regenerate. + +2020-04-14 Fangrui Song + + PR gas/25768 + * elf.c (assign_section_numbers): Always set .stab sh_entsize to + 12. + +2020-04-14 Stephen Casner + + 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 + Nick Clifton + + * elf32-sparc.c (sparc_final_write_processing): Fix whitespace. + <0>: Ignore. + : Error rather than abort. + +2020-04-03 H.J. Lu + + PR ld/25767 + * elf.c (_bfd_elf_fixup_group_sections): Remove zero-sized + relocation section from section group. + +2020-04-02 Jan W. Jagersma + + * 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 + + 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 + + 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 + + * elf32-arm.c (elf32_thumb2_plt_entry): Fix PC-rel offset. + +2020-04-01 Hans-Peter Nilsson + + * mmo.c (mmo_scan): Create .text section only when needed, not + from the start. + +2020-03-31 Alan Modra + + * coff-alpha.c (alpha_ecoff_get_elt_at_filepos): Correct bfd_bread + return value check. + +2020-03-31 Alan Modra + + * vms-alpha.c (image_write): Check bounds for sections without + contents too. Error on non-zero write to section without + contents. + (_bfd_vms_slurp_etir): Check return of image_write* functions. + +2020-03-31 Alan Modra + + * tekhex.c (pass_over): Check is_eof before reading buffer. + +2020-03-30 Nick Clifton + + PR binutils/pr25662 + * libcoff-in.h (struct pe_tdata): Rename the insert_timestamp + field to timestamp and make it an integer. + * libcoff.h: Regenerate. + * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): Test the timestamp + field in the pe_data structure rather than the insert_timestamp + field. + +2020-03-30 Alan Modra + + PR 25745 + * elf64-ppc.c (ppc64_elf_build_stubs): Use asprintf to form + statistics message. + +2020-03-26 Nick Clifton + + * cofflink.c (bfd_coff_get_internal_extra_pe_aouthdr): Delete. + * libbfd-in.h (bfd_coff_get_internal_extra_pe_aouthdr): Remove + prototype. + * libbfd.h: Regenerate. + +2020-03-26 Alan Modra + + * i386msdos.c (msdos_object_p): Catch -1 return from bfd_bread. + +2020-03-26 Alan Modra + + * vms-alpha.c (dst_define_location): Limit size of dst_ptr_offsets + array. + (_bfd_vms_slurp_object_records): Rename "err" to "ok". + +2020-03-25 Nick Clifton + + * cofflink.c (bfd_coff_get_internal_extra_pe_aouthdr): New + function. + * libbfd-in.h (bfd_coff_get_internal_extra_pe_aouthdr): Prototype. + * libbfd.h: Regenerate. + +2020-03-25 Shahab Vahedi + + * elf32-arc.c (PRINT_DEBUG_RELOC_INFO_BEFORE): Use the + correct field name in the output string. + +2020-03-25 Alan Modra + + PR 25662 + * elf.c (assign_file_positions_for_load_sections): Adjust offset + for SHT_NOBITS section if first in segment. + +2020-03-24 H.J. Lu + + PR binutils/25708 + * elf-bfd.h (_bfd_elf_get_symbol_version_name): Renamed to ... + (_bfd_elf_get_symbol_version_string): This. + * elf.c (_bfd_elf_get_symbol_version_name): Renamed to ... + (_bfd_elf_get_symbol_version_string): This. + (bfd_elf_print_symbol): Pass TRUE to + _bfd_elf_get_symbol_version_string. + * libbfd-in.h (_bfd_nosymbols_get_symbol_version_string): Add a + bfd_boolean argument. + * syms.c (_bfd_nosymbols_get_symbol_version_string): Likewise. + * targets.c (_bfd_get_symbol_version_string): Likewise. + (bfd_get_symbol_version_string): Likewise. + * bfd-in2.h: Regenerated. + +2020-03-24 Nick Clifton + Jaydeep Chauhan + + PR 25713 + * bfdio.c (_bfd_real_fopen): Add code to handle long filenames on + Win32 systems. + +2020-03-24 Nick Clifton + + PR 25681 + * elf.c (_bfd_elf_map_sections_to_segments): When looking for a + segment to use for PT_GNU_RELRO, ignore empty sections in a + segment's current list. + +2020-03-24 H.J. Lu + + PR binutils/25717 + * elf-bfd.h (elf_obj_tdata): Change num_group to unsigned int. + +2020-03-24 H.J. Lu + + PR binutils/25708 + * elf-bfd.h (_bfd_elf_get_symbol_version_name): New. + * elf.c (_bfd_elf_get_symbol_version_name): New function. Based + on the previous _bfd_elf_get_symbol_version_string. + (_bfd_elf_get_symbol_version_string): Use it. + +2020-03-24 Alan Modra + + * archive.c (_bfd_generic_read_ar_hdr_mag): Sanity check extended + name size. Use bfd_malloc rather than bfd_zmalloc, clearing just + struct areltdata. + +2020-03-23 Sebastian Huber + + * elflink.c (_bfd_elf_tls_setup): Mention .tdata in comment. + +2020-03-23 Alan Modra + + * ecoff.c (_bfd_ecoff_slurp_armap): Sanity check parsed_size and + symbol count. Allocate an extra byte to ensure name strings + are terminated. Sanity check name offsets. Release memory on + error return. + +2020-03-23 Alan Modra + + * i386msdos.c (msdos_object_p): Don't access e_lfanew when that + field hasn't been read. Remove unnecessary casts. + +2020-03-22 Alan Modra + + * coff64-rs6000.c (xcoff64_slurp_armap): Ensure size is large + enough to read number of symbols. + +2020-03-20 H.J. Lu + + * configure.ac (HAVE_EXECUTABLE_SUFFIX): Removed. + (EXECUTABLE_SUFFIX): Likewise. + * config.in: Regenerated. + * configure: Likewise. + * plugin.c (bfd_plugin_close_and_cleanup): Defined as + _bfd_generic_close_and_cleanup. + (plugin_list_entry): Remove resolution_file, resolution_option, + real_bfd, real_nsyms, real_syms, lto_nsyms, lto_syms, gcc, + lto_wrapper, gcc_env and initialized, + (need_lto_wrapper_p): Removed. + (get_lto_wrapper): Likewise. + (setup_lto_wrapper_env): Likewise. + (register_all_symbols_read): Likewise. + (egister_cleanup): Likewise. + (get_symbols): Likewise. + (add_input_file): Likewise. + (bfd_plugin_set_program_name): Remove need_lto_wrapper. + (add_symbols): Updated. + (try_claim): Likewise. + (try_load_plugin): Likewise. + (bfd_plugin_canonicalize_symtab): Likewise. + * plugin.h (bfd_plugin_set_program_name): Remove int argument. + (plugin_data_struct): Remove real_bfd, real_nsyms and real_syms. + +2020-03-19 H.J. Lu + + PR binutils/25640 + * plugin.c (plugin_list_entry): Add has_symbol_type. + (add_symbols_v2): New function. + (bfd_plugin_open_input): Don't invoke LTO wrapper if LTO plugin + provides symbol type. + (try_load_plugin): Add LDPT_ADD_SYMBOLS_V2. + (bfd_plugin_canonicalize_symtab): Use LTO plugin symbol type if + available. + +2020-03-20 Alan Modra + + * coff-rs6000.c (_bfd_xcoff_slurp_armap): Ensure size is large + enough to read number of symbols. + +2020-03-20 Alan Modra + + * elf.c (_bfd_elf_setup_sections): Don't test known non-NULL + backend functions for NULL before calling. + (copy_special_section_fields, _bfd_elf_copy_private_bfd_data), + (bfd_section_from_shdr, assign_section_numbers): Likewise. + * elfcode.h (elf_write_relocs, elf_slurp_reloc_table): Likewise. + * elfnn-ia64.c (ignore_errors): New function. + (elf_backend_link_order_error_handler): Redefine as ignore_errors. + +2020-03-19 Nick Clifton + + PR 25676 + * dwarf2.c (struct varinfo): Add unit_offset field to record the + location of the varinfo in the unit's debug info data. Change the + type of the stack field to a boolean. + (lookup_var_by_offset): New function. Returns the varinfo + structure for the variable described at the given offset in the + unit's debug info. + (scan_unit_for_symbols): Add support for variables which have the + DW_AT_specification attribute. + +2020-03-19 Nick Clifton + + PR 25699 + * elf.c (bfd_elf_set_group_contents): Replace assertion with an + error return. + +2020-03-19 Sebastian Huber + + * elfxx-riscv.c (riscv_parse_subset): Don't use C99. + +2020-03-18 Nick Clifton + + PR 25673 + * elf.c (_bfd_elf_write_secondary_reloc_section): Fix illegal + memory access when processing a corrupt secondary reloc section. + +2020-03-18 Christophe Lyon + + * elf32-arm.c (arm_build_one_stub): Emit a fatal error message + instead of calling abort. + * elf32-csky.c (csky_build_one_stub): Likewise. + * elf32-hppa.c (hppa_build_one_stub): Likewise. + * elf32-m68hc11.c (m68hc11_elf_build_one_stub): Likewise. + * elf32-m68hc12.c (m68hc12_elf_build_one_stub): Likewise. + * elf32-metag.c (metag_build_one_stub): Likewise. + * elf32-nios2.c (nios2_build_one_stub): Likewise. + * elf64-ppc.c (ppc_build_one_stub): Likewise. + (ppc_size_one_stub): Likewise. + * elfnn-aarch64.c (aarch64_build_one_stub): Likewise. + +2020-03-17 Nick Clifton + + PR 25688 + * elf.c (_bfd_elf_copy_special_section_fields): Replace assertions + with error messages. + +2020-03-17 Nick Clifton + + PR 25687 + * elf.c (_bfd_elf_slurp_secondary_reloc_section): Remove redundant + free. Add free on another failure path. + +2020-03-16 Alan Modra + + PR 25675 + * elf.c (elf_sort_segments): Don't call bfd_octets_per_byte unless + we have a non-zero section count. Do lma comparison in octets. + +2020-03-16 Alan Modra + + * vms-alpha.c (dst_restore_location): Validate index into + dst_ptr_offsets array before accessing. Return status. + (dst_retrieve_location): Similarly, making "loc" parameter a + pointer to return value. + (_bfd_vms_slurp_etir): Update calls to above functions. + +2020-03-14 Kamil Rytarowski + + * configure.ac: Include netbsd-core.lo for all NetBSD arm and mips + targets. + * configure: Regenerated. + +2020-03-14 Alan Modra + + * section.c (BFD_FAKE_SECTIONS): Formatting. + * bfd-in2.h: Regenerate. + +2020-03-13 Kamil Rytarowski + + * elf.c (elfcore_grok_netbsd_note): Add support for + NT_NETBSDCORE_LWPSTATUS notes. + +2020-03-13 Christophe Lyon + + * bfd-in2.h: Regenerate. + * section.c (asection): Add already_assigned field. + (BFD_FAKE_SECTION): Add default initializer for it. + * ecoff.c (bfd_debug_section): Initialize already_assigned field. + * elf32-arm.c (arm_build_one_stub): Add support for + non_contiguous_regions. + * elf32-csky.c (csky_build_one_stub): Likewise. + * elf32-hppa.c (hppa_build_one_stub): Likewise. + * elf32-m68hc11.c (m68hc11_elf_build_one_stub): Likewise. + * elf32-m68hc12.c (m68hc12_elf_build_one_stub): Likewise. + * elf32-metag.c (metag_build_one_stub): Likewise. + * elf32-nios2.c (nios2_build_one_stub): Likewise. + * elf64-ppc.c (ppc_build_one_stub): Likewise. + (ppc_size_one_stub): Likewise. + * elfnn-aarch64.c (aarch64_build_one_stub): Likewise. + * elflink.c (elf_link_input_bfd): Likewise. + +2020-03-13 H.J. Lu + + PR ld/24920 + * elf-linker-x86.h (elf_linker_x86_params): Add + static_before_all_inputs and has_dynamic_linker. + * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Report + dynamic input objects if -static is passed at command-line + before all input files without --dynamic-linker unless + --no-dynamic-linker is used. + +2020-03-13 Kamil Rytarowski + + * elf.c (elfcore_grok_netbsd_note): Add support for aarch64. + +2020-03-13 Christian Eggers + + * bfd.c (bfd_record_phdr): New local "opb". Fix assignment of + "p_paddr" from "at". + * elfcode.h (bfd_from_remote_memory): Add units to several + parameters. New local "opb". Fix usage of p_align. Fix + calculation of "localbase" from "ehdr_vma" and "p_vaddr". Fix + call of target_read_memory. + * elflink.c (elf_fixup_link_order): Fix scope of "s" local. Fix + calculation of "offset" and "output_offset". + (bfd_elf_final_link): New local "opb". Fix calculation of "size" + from "offset" and fix calculation of "end" from "vma+size". Fix + comparison between "sh_addr" and "vma"/"output_offset". + (bfd_elf_discard_info): Fix calculation of "eh_alignment". + * elf-bfd.h (struct elf_link_hash_table): Add unit to tls_size + member. + * elf.c (_bfd_elf_map_sections_to_segments): Add unit (bytes/ + octets) to "wrap_to2 and "phdr_size" locals. Fix calculation of + "wrap_to" value. Add unit (bytes) to phdr_lma variable. Fix + assignment of p_paddr from phdr_lma. Fix comparison between + "lma+size" and "next->lma". + (elf_sort_segments): Fix assignment from p_paddr to lma. + (assign_file_positions_for_load_sections): Add unit (bytes) to + local "align". Fix calculation of local "off_adjust". Fix + calculation of local "filehdr_vaddr". + (assign_file_positions_for_non_load_sections): New local "opb". + Fix calculation of "end" from "p_size". Fix comparison between + "vma+SECTION_SIZE" and "start". Fix calculation of "p_memsz" + from "end" and "p_vaddr". + (rewrite_elf_program_header): Fix comparison between p_vaddr and + vma. Fix assignment to p_paddr from lma. Fix comparison between + p_paddr and lma. Fix assignment to p_paddr from lma. + * merge.c (sec_merge_emit): New local "opb". Convert + "alignment_power" to octets. + (_bfd_add_merge_section): New locals "alignment_power" and + "opb". Fix comparison between "alignment_power" and + "sizeof(align)". + (_bfd_merge_sections): New local "opb". Divide size by opb + before checking align mask. + +2020-03-13 Christian Eggers + + * elf.c (_bfd_elf_make_section_from_shdr): Introduce new temp + opb. Divide Elf_Internal_Shdr::sh_addr by opb when setting + section LMA/VMA. + (_bfd_elf_make_section_from_phdr): Similarly. + (elf_fake_sections): Fix calculation of + Elf_Internal_shdr::sh_addr from section VMA. + (_bfd_elf_map_sections_to_segments): Fix mixup between octets + and bytes. + (assign_file_positions_for_load_sections): Fix calculations of + Elf_Internal_shdr::p_vaddr and p_paddr from section LMA/VMA. Fix + comparison between program header address and section LMA. + (assign_file_positions_for_non_load_sections): Likewise. + (rewrite_elf_program_header): Likewise. Introduce new temp opb. + (IS_CONTAINED_BY_VMA): Add parameter opb. + (IS_CONTAINED_BY_LMA,IS_SECTION_IN_INPUT_SEGMENT, + INCLUDE_SECTION_IN_SEGMENT): Likewise. + (copy_elf_program_header): Update call to ELF_SECTION_IN_SEGMENT. + Fix calculations of p_addr_valid and p_vaddr_offset. + * elflink.c (elf_link_add_object_symbols): Multiply section VMA + with octets per byte when comparing against p_vaddr. + +2020-03-11 Alan Modra + + * som.c (setup_sections): Sanity check subspace.name. + +2020-03-11 Alan Modra + + * elf64-ppc.c (ppc64_elf_inline_plt): Do increment rel in for loop. + 2020-03-10 Alan Modra PR 25648