| 1 | 2020-01-23 Nick Clifton <nickc@redhat.com> |
| 2 | |
| 3 | * po/fr.po: Updated French translation. |
| 4 | |
| 5 | 2020-01-23 Alan Modra <amodra@gmail.com> |
| 6 | |
| 7 | PR 25444 |
| 8 | * elf.c (assign_file_positions_for_load_sections): Avoid divide |
| 9 | by zero when p_align is zero. |
| 10 | |
| 11 | 2020-01-22 Maxim Blinov <maxim.blinov@embecosm.com> |
| 12 | |
| 13 | * bfd/elfnn-riscv.c (riscv_skip_prefix): New. |
| 14 | (riscv_prefix_cmp): Likewise. |
| 15 | (riscv_non_std_ext_p): Deleted. |
| 16 | (riscv_std_sv_ext_p): Likewise. |
| 17 | (riscv_non_std_sv_ext_p): Likewise. |
| 18 | (riscv_merge_non_std_and_sv_ext): Rename to... |
| 19 | (riscv_merge_multi_letter_ext): and modified to use riscv_prefix_cmp. |
| 20 | (riscv_merge_arch_attr_info): Replace 3 calls to |
| 21 | riscv_merge_non_std_and_sv_ext with single call to |
| 22 | riscv_merge_multi_letter_ext. |
| 23 | * bfd/elfxx-riscv.c (riscv_parse_std_ext): Break if we |
| 24 | encounter a 'z' prefix. |
| 25 | (riscv_get_prefix_class): New function, return prefix class based |
| 26 | on first few characters of input string. |
| 27 | (riscv_parse_config): New structure to factor out minor differences |
| 28 | in extension class parsing behaviour. |
| 29 | (riscv_parse_sv_or_non_std_ext): Rename to... |
| 30 | (riscv_parse_prefixed_ext): and parameterise with |
| 31 | riscv_parse_config. |
| 32 | (riscv_std_z_ext_strtab, riscv_std_s_ext_strtab): New. |
| 33 | (riscv_multi_letter_ext_valid_p): New. |
| 34 | (riscv_ext_x_valid_p, riscv_ext_z_valid_p, riscv_ext_s_valid_p): New. |
| 35 | (riscv_parse_subset): Delegate all non-single-letter parsing work |
| 36 | to riscv_parse_prefixed_ext. |
| 37 | * bfd/elfxx-riscv.h (riscv_isa_ext_class): New type. |
| 38 | (riscv_get_prefix_class): Declare. |
| 39 | |
| 40 | 2020-01-22 Alan Modra <amodra@gmail.com> |
| 41 | |
| 42 | * elf64-ppc.c (struct ppc_link_hash_table): Add tga_group. |
| 43 | (ppc64_elf_archive_symbol_lookup): Extract __tls_get_addr_opt for |
| 44 | __tls_get_addr_desc. |
| 45 | (ppc64_elf_size_stubs): Add section for linker generated |
| 46 | __tls_get_addr_desc wrapper function. Loop at least once if |
| 47 | generating this function. |
| 48 | (emit_tga_desc, emit_tga_desc_eh_frame): New functions. |
| 49 | (ppc64_elf_build_stubs): Generate __tls_get_addr_desc. |
| 50 | |
| 51 | 2020-01-22 Alan Modra <amodra@gmail.com> |
| 52 | |
| 53 | * elf64-ppc.h (struct ppc64_elf_params): Add no_tls_get_addr_regsave. |
| 54 | * elf64-ppc.c (struct ppc_link_hash_table): Add tga_desc and |
| 55 | tga_desc_fd. |
| 56 | (is_tls_get_addr): Match tga_desc and tga_desc_df too. |
| 57 | (STDU_R1_0R1, ADDI_R1_R1): Define. |
| 58 | (tls_get_addr_prologue, tls_get_addr_epilogue): New functions. |
| 59 | (ppc64_elf_tls_setup): Set up tga_desc and tga_desc_fd. Indirect |
| 60 | tga_desc_fd to opt_fd, and tga_desc to opt. Set |
| 61 | no_tls_get_addr_regsave. |
| 62 | (branch_reloc_hash_match): Add hash3 and hash4. |
| 63 | (ppc64_elf_tls_optimize): Handle tga_desc_fd and tga_desc too. |
| 64 | (ppc64_elf_size_dynamic_sections): Likewise. |
| 65 | (ppc64_elf_relocate_section): Likewise. |
| 66 | (plt_stub_size, build_plt_stub): Likewise. Size regsave |
| 67 | __tls_get_addr stub. |
| 68 | (build_tls_get_addr_stub): Build regsave __tls_get_addr stub and |
| 69 | eh_frame. |
| 70 | (ppc_size_one_stub): Handle tga_desc_fd and tga_desc too. Size |
| 71 | eh_frame for regsave __tls_get_addr. |
| 72 | |
| 73 | 2020-01-22 Alan Modra <amodra@gmail.com> |
| 74 | |
| 75 | * elf64-ppc.c (ppc64_elf_size_stubs): Correct condition under |
| 76 | which __tls_get_addr calls will be eliminated. |
| 77 | |
| 78 | 2020-01-20 Nick Clifton <nickc@redhat.com> |
| 79 | |
| 80 | * po/pt.po: Updates Portuguese translation. |
| 81 | * po/ru.po: Updated Russian translation. |
| 82 | * po/uk.po: Updated Ukranian translation. |
| 83 | |
| 84 | 2020-01-20 H.J. Lu <hongjiu.lu@intel.com> |
| 85 | |
| 86 | PR ld/25416 |
| 87 | * elf64-x86-64.c (elf_x86_64_check_tls_transition): Support |
| 88 | "rex leal x@tlsdesc(%rip), %reg" and "call *x@tlsdesc(%eax)" in |
| 89 | X32 mode. |
| 90 | (elf_x86_64_relocate_section): In x32 mode, for GDesc -> LE |
| 91 | transition, relax "rex leal x@tlsdesc(%rip), %reg" to |
| 92 | "rex movl $x@tpoff, %reg", for GDesc -> IE transition, relax |
| 93 | "rex leal x@tlsdesc(%rip), %reg" to |
| 94 | "rex movl x@gottpoff(%rip), %eax". For both transitions, relax |
| 95 | "call *(%eax)" to "nopl (%rax)". |
| 96 | |
| 97 | 2020-01-20 Alan Modra <amodra@gmail.com> |
| 98 | |
| 99 | * elf64-ppc.c (LD_R11_0R3, CMPDI_R11_0, STD_R11_0R1, LD_R11_0R1), |
| 100 | (MTLR_R11): Don't define. |
| 101 | (LD_R0_0R3, CMPDI_R0_0): Define. |
| 102 | (build_tls_get_addr_stub): Don't use r11 in stub. |
| 103 | |
| 104 | 2020-01-20 Alan Modra <amodra@gmail.com> |
| 105 | |
| 106 | * elf64-ppc.c (ppc_elf_hash_entry): New function, use throughout file. |
| 107 | (defined_sym_val, is_tls_get_addr): Likewise. |
| 108 | |
| 109 | 2020-01-18 Nick Clifton <nickc@redhat.com> |
| 110 | |
| 111 | * version.m4 (BFD_VERSION): Set to 2.34.50. |
| 112 | * configure: Regenerate. |
| 113 | * po/bfd.pot: Regenerate. |
| 114 | |
| 115 | 2020-01-18 Nick Clifton <nickc@redhat.com> |
| 116 | |
| 117 | Binutils 2.34 branch created. |
| 118 | |
| 119 | 2020-01-17 Christian Biesinger <cbiesinger@google.com> |
| 120 | |
| 121 | * coff-arm.c: Fix spelling error (seperate). |
| 122 | * elfxx-riscv.c (riscv_parse_sv_or_non_std_ext): Fix spelling |
| 123 | error (seperate). |
| 124 | * sysdep.h (strnlen): Fix spelling error (seperate). |
| 125 | |
| 126 | 2020-01-15 Lars Brinkhoff <lars@nocrew.org> |
| 127 | |
| 128 | PR 20694 |
| 129 | * pdp11.c (TARGET_PAGE_SIZE): Set to 8192. |
| 130 | |
| 131 | 2020-01-15 Alan Modra <amodra@gmail.com> |
| 132 | |
| 133 | PR 25384 |
| 134 | * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Update comment. |
| 135 | (ppc64_elf_adjust_dynamic_symbol): Don't allow .dynbss copies |
| 136 | of function symbols unless dot symbols are present. Do warn |
| 137 | whenever one is created, regardles of whether a PLT entry is |
| 138 | also emitted for the function symbol. |
| 139 | |
| 140 | 2020-01-14 Alan Modra <amodra@gmail.com> |
| 141 | |
| 142 | * som.c (som_bfd_count_ar_symbols): Error when file position |
| 143 | of symbols on chains is not strictly increasing. |
| 144 | |
| 145 | 2020-01-14 Alan Modra <amodra@gmail.com> |
| 146 | |
| 147 | * vms.h (VMS_DEBUG): Define as 0. |
| 148 | * vms-alpha.c (image_write): Move debug output after bounds check. |
| 149 | Tidy bounds check. |
| 150 | (_bfd_vms_slurp_eihd): Warning fix. |
| 151 | (_bfd_vms_slurp_etir): Init variables to avoid bogus warnings. |
| 152 | |
| 153 | 2020-01-13 Alan Modra <amodra@gmail.com> |
| 154 | |
| 155 | * vms-alpha.c (_bfd_vms_slurp_egsd): Ensure minimum size even |
| 156 | for "ignored" records. |
| 157 | |
| 158 | 2020-01-13 Alan Modra <amodra@gmail.com> |
| 159 | |
| 160 | * wasm-module.c (wasm_scan_name_function_section): Formatting. |
| 161 | Delete asect name check. Move asect NULL check to wasm_object_p. |
| 162 | Correct bounds check of sizes against end. Replace uses of |
| 163 | bfd_zalloc with bfd_alloc, zeroing only necessary bytes. Use |
| 164 | just one bfd_release. |
| 165 | (wasm_scan): Don't use malloc/strdup for section names, |
| 166 | bfd_alloc instead. Simplify code prefixing section name. |
| 167 | Formatting. Don't attempt to free memory here.. |
| 168 | (wasm_object_p): ..do so here. |
| 169 | |
| 170 | 2020-01-10 Szabolcs Nagy <szabolcs.nagy@arm.com> |
| 171 | |
| 172 | PR ld/22269 |
| 173 | * elf32-arm.c (elf32_arm_final_link_relocate): Use |
| 174 | UNDEFWEAK_NO_DYNAMIC_RELOC. |
| 175 | (allocate_dynrelocs_for_symbol): Likewise. |
| 176 | |
| 177 | 2020-01-10 Tamar Christina <tamar.christina@arm.com> |
| 178 | |
| 179 | PR 25210 |
| 180 | * elfnn-aarch64.c (_bfd_aarch64_create_stub_section): Remove elfclass. |
| 181 | |
| 182 | 2020-01-10 Alan Modra <amodra@gmail.com> |
| 183 | |
| 184 | * coff-alpha.c (alpha_ecoff_object_p): Calculate size in bfd_size_type. |
| 185 | |
| 186 | 2020-01-09 Nick Clifton <nickc@redhat.com> |
| 187 | |
| 188 | PR 25221 |
| 189 | * bfd.c (bfd_convert_section_contents): Check for a compress |
| 190 | header size that is larger than the actual section size. |
| 191 | |
| 192 | 2020-01-08 Alan Modra <amodra@gmail.com> |
| 193 | |
| 194 | PR 25351 |
| 195 | * elflink.c (bfd_elf_final_link): Call _bfd_fix_excluded_sec_syms |
| 196 | after removing sections. |
| 197 | |
| 198 | 2020-01-06 Jim Wilson <jimw@sifive.com> |
| 199 | |
| 200 | PR 25205 |
| 201 | * elfnn-riscv.c (riscv_elf_relocate_section) <R_RISCV_CALL>: Add |
| 202 | check for !bfd_link_pic (info). |
| 203 | <R_RISCV_CALL_PLT>: Move next to R_RISCV_CALL. |
| 204 | <R_RISCV_JAL>: Add comment. |
| 205 | (_bfd_riscv_relax_section): For plt.offset check, add check for |
| 206 | bfd_link_pic (info). Add comment. |
| 207 | |
| 208 | 2020-01-06 Alan Modra <amodra@gmail.com> |
| 209 | |
| 210 | * format.c (bfd_check_format_matches): Ignore bfd_error on target |
| 211 | match failures. Don't init to bfd_error_wrong_format before |
| 212 | calling _bfd_check_format. |
| 213 | |
| 214 | 2020-01-06 Alan Modra <amodra@gmail.com> |
| 215 | |
| 216 | * vms-alpha.c (_bfd_vms_push, _bfd_vms_pop): Return pass/fail |
| 217 | status rather than exiting on stack overflow or underflow. |
| 218 | (_bfd_vms_slurp_etir): Adjust to suit. |
| 219 | |
| 220 | 2020-01-06 Alan Modra <amodra@gmail.com> |
| 221 | |
| 222 | * som.c (som_bfd_fill_in_ar_symbols): Bounds check som_dict index. |
| 223 | |
| 224 | 2020-01-06 Alan Modra <amodra@gmail.com> |
| 225 | |
| 226 | * mach-o.c (bfd_mach_o_read_dylinker): Don't read past end of |
| 227 | command. Check name offset is within command. |
| 228 | (bfd_mach_o_read_dylib, bfd_mach_o_read_prebound_dylib), |
| 229 | (bfd_mach_o_read_prebind_cksum, bfd_mach_o_read_twolevel_hints), |
| 230 | (bfd_mach_o_read_fvmlib, bfd_mach_o_read_dysymtab), |
| 231 | (bfd_mach_o_read_symtab, bfd_mach_o_read_uuid), |
| 232 | (bfd_mach_o_read_linkedit, bfd_mach_o_read_str), |
| 233 | (bfd_mach_o_read_dyld_info, bfd_mach_o_read_version_min), |
| 234 | (bfd_mach_o_read_encryption_info, bfd_mach_o_read_source_version), |
| 235 | (bfd_mach_o_read_encryption_info_64, bfd_mach_o_read_main), |
| 236 | (bfd_mach_o_read_note, bfd_mach_o_read_build_version), |
| 237 | (bfd_mach_o_read_segment): Similarly. |
| 238 | (bfd_mach_o_read_thread): Properly bound check thread struct. |
| 239 | Don't repeat checks on second loop. |
| 240 | (bfd_mach_o_read_command): Fail on invalid command length. |
| 241 | |
| 242 | 2020-01-04 Alan Modra <amodra@gmail.com> |
| 243 | |
| 244 | * format.c (bfd_check_format_matches): Add preserve_match. |
| 245 | Save initial bfd state in "preserve", matched bfd state in |
| 246 | "preserve_match". Save just the first match. Release |
| 247 | bfd_alloc memory. Restore and finish preserved state as |
| 248 | appropriate on all function exit paths. |
| 249 | |
| 250 | 2020-01-04 Alan Modra <amodra@gmail.com> |
| 251 | |
| 252 | * mmo.c (mmo_mkobject): Allocate tdata with bfd_zalloc. |
| 253 | |
| 254 | 2020-01-04 Alan Modra <amodra@gmail.com> |
| 255 | |
| 256 | * coffgen.c (coff_real_object_p): Free malloc'd memory on target |
| 257 | match too. |
| 258 | |
| 259 | 2020-01-03 Nick Clifton <nickc@redhat.com> |
| 260 | |
| 261 | PR 25307 |
| 262 | (bfd_pef_parse_function_stubs): Correct the test that ensures that |
| 263 | there is enough data remaining in the code buffer before |
| 264 | attempting to read a function stub. |
| 265 | |
| 266 | 2020-01-03 Nick Clifton <nickc@redhat.com> |
| 267 | |
| 268 | PR 25308 |
| 269 | * elf-properties.c (_bfd_elf_convert_gnu_properties): Check the |
| 270 | return value from bfd_malloc. |
| 271 | * elf32-arm.c (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise. |
| 272 | (bfd_elf32_arm_stm32l4xx_fix_veneer_locations): Likewise. |
| 273 | (elf32_arm_filter_cmse_symbols): Likewise. |
| 274 | (elf32_arm_write_section): Likewise. |
| 275 | * mach-o.c (bfd_mach_o_core_fetch_environment): Likewise. |
| 276 | (bfd_mach_o_follow_dsym): Likewise. |
| 277 | * pef.c (bfd_pef_print_loader_section): Likewise. |
| 278 | (bfd_pef_scan_start_address): Likewise. |
| 279 | (bfd_pef_parse_function_stubs): Likewise. |
| 280 | (bfd_pef_parse_symbols): Likewise. |
| 281 | |
| 282 | 2020-01-03 Sergei Trofimovich <siarheit@google.com> |
| 283 | |
| 284 | * elfnn-ia64.c (elfNN_ia64_merge_private_bfd_data): don't fail |
| 285 | on binary inputs ld/PR25316. |
| 286 | (is_ia64_elf): new helper to filter on ia64 objects. |
| 287 | |
| 288 | 2020-01-03 Jan Beulich <jbeulich@suse.com> |
| 289 | |
| 290 | * mach-o.c (cpusubtype, bfd_mach_o_header_p): Insert underscore |
| 291 | in parameter names. |
| 292 | (bfd_mach_o_scan): Insert underscore in two variable names. |
| 293 | |
| 294 | 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com> |
| 295 | |
| 296 | * Makefile.am: Add z80-elf target support. |
| 297 | * configure.ac: Likewise. |
| 298 | * targets.c: Likewise. |
| 299 | * Makefile.in: Regenerate. |
| 300 | * configure: Regenerate. |
| 301 | * config.bfd: Add z80-elf target support and new arches: ez80 and |
| 302 | z180. |
| 303 | * elf32-z80.c: New file. |
| 304 | * archures.c: Add new z80 architectures: eZ80 and Z180. |
| 305 | * coffcode.h: Likewise. |
| 306 | * cpu-z80.c: Likewise. |
| 307 | * coff-z80.c: Add new relocations for Z80 target and local label |
| 308 | check. |
| 309 | * reloc.c: Add new relocs. |
| 310 | * bfd-in2.h: Regenerate. |
| 311 | * libbfd.h: Regenerate. |
| 312 | |
| 313 | 2020-01-02 Tamar Christina <tamar.christina@arm.com> |
| 314 | |
| 315 | PR 25210 |
| 316 | PR 24753 |
| 317 | * elfnn-aarch64.c (_bfd_aarch64_create_stub_section): Set ELF class. |
| 318 | |
| 319 | 2020-01-01 Alan Modra <amodra@gmail.com> |
| 320 | |
| 321 | Update year range in copyright notice of all files. |
| 322 | |
| 323 | For older changes see ChangeLog-2019 |
| 324 | \f |
| 325 | Copyright (C) 2020 Free Software Foundation, Inc. |
| 326 | |
| 327 | Copying and distribution of this file, with or without modification, |
| 328 | are permitted in any medium without royalty provided the copyright |
| 329 | notice and this notice are preserved. |
| 330 | |
| 331 | Local Variables: |
| 332 | mode: change-log |
| 333 | left-margin: 8 |
| 334 | fill-column: 74 |
| 335 | version-control: never |
| 336 | End: |