]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/ChangeLog
vms buffer overflows and large memory allocation
[thirdparty/binutils-gdb.git] / bfd / ChangeLog
CommitLineData
c893ce36
AM
12020-02-24 Alan Modra <amodra@gmail.com>
2
3 * vms-lib.c (struct carsym_mem): Add limit.
4 (vms_add_index): Heed limit.
5 (vms_traverse_index): Catch buffer overflows. Remove outdated fixme.
6 (vms_lib_read_index): Set up limit. Catch 32-bit overflow.
7 Always return actual number read.
8 (_bfd_vms_lib_archive_p): Catch buffer overflows. Replace
9 assertion with error exit.
10
7b3c2715
AM
112020-02-22 Alan Modra <amodra@gmail.com>
12
13 PR 25585
14 * elf.c (assign_file_positions_for_load_sections): Continue linking
15 on "PHDR segment not covered by LOAD segment" errors.
16
a4425a57
AM
172020-02-21 Alan Modra <amodra@gmail.com>
18
19 * mach-o.c (bfd_mach_o_canonicalize_relocs): Fix ineffective
20 overflow check.
21 (bfd_mach_o_canonicalize_reloc): Likewise.
22 (bfd_mach_o_canonicalize_dynamic_reloc): Likewise. Sanity check
23 counts and offsets against file size.
24 (bfd_mach_o_build_dysymtab): Fix ineffective overflow check.
25 (bfd_mach_o_mangle_sections): Remove unnecessary overflow check.
26 (bfd_mach_o_read_symtab_symbols): Sanity check count and offset
27 against file size. Delete symbol table error message.
28 (bfd_mach_o_read_dysymtab): Sanity check counts and offsets
29 against file size.
30 (bfd_mach_o_read_symtab): Likewise.
31 (bfd_mach_o_read_command): Pass file size.
32 (bfd_mach_o_scan): Sanity check command count against file size.
33
dda2980f
AM
342020-02-21 Alan Modra <amodra@gmail.com>
35
36 PR 25569
37 * aoutx.h (adjust_o_magic, adjust_z_magic, adjust_n_magic): Use
38 "text", "data" and "bss" section pointer vars. Don't update
39 section size, just exec header sizes.
40 (adjust_sizes_and_vmas): Don't update text section size. Set
41 initial exec header a_text. Print exec headers sizes.
42 * pdp11.c (adjust_o_magic, adjust_z_magic, adjust_n_magic),
43 (adjust_sizes_and_vmas): Similarly. Formatting.
44 (final_link): Correct final file extension.
45
00e49dff
NC
462020-02-20 Nick Clifton <nickc@redhat.com>
47
48 * elf-bfd.h (struct elf_backend_data): Add symbol_section_index
49 callback.
50 * elfxx-target.h (elf_backend_symbol_section_index): Provide
51 default definition.
52 (elfNN_bed): Initialise the symbol_section_index field.
53 * elf.c (swap_out_syms): Call symbol_section_index, if defined, on
54 OS and PROC specific section indicies. Warn if converting other
55 reserved incidies to SHN_ABS.
56
fcaaac0a
SB
572020-02-19 Sergey Belyashov <sergey.belyashov@gmail.com>
58
59 PR 25537
60 * cpu-z80.c: Add machine type compatibility checking.
61
dcf06b89
L
622020-02-19 H.J. Lu <hongjiu.lu@intel.com>
63
64 PR binutils/25355
65 * plugin.c (plugin_list_entry): Remove handle.
66 (try_load_plugin): Call dlclose before return.
67
2c7c5554
AM
682020-02-19 Alan Modra <amodra@gmail.com>
69
70 * libbfd-in.h (_bfd_constant_p): Define.
71 (_bfd_alloc_and_read, _bfd_malloc_and_read): Check read size against
72 file size before allocating memory.
73 * coffgen.c (_bfd_coff_get_external_symbols): Remove file size check.
74 * elf.c (bfd_elf_get_str_section): Likewise.
75 (_bfd_elf_slurp_version_tables): Likewise.
76 * libbfd.h: Regenerate.
77
2bb3687b
AM
782020-02-19 Alan Modra <amodra@gmail.com>
79
80 * libbfd-in.h (_bfd_alloc_and_read, _bfd_malloc_and_read): New.
81 * aoutx.h (aout_get_external_symbols): Replace calls to
82 bfd_[m]alloc and bfd_bread with call to _bfd_[m]alloc_and_read.
83 (slurp_reloc_table): Likewise.
84 * archive.c (do_slurp_bsd_armap): Likewise.
85 (do_slurp_coff_armap): Likewise.
86 * archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise.
87 * coff-rs6000.c (_bfd_xcoff_slurp_armap): Likewise.
88 * coff64-rs6000.c (xcoff64_slurp_armap): Likewise.
89 * coffcode.h (coff_set_arch_mach_hook, buy_and_read): Likewise.
90 * coffgen.c (coff_real_object_p, coff_object_p, build_debug_section),
91 (_bfd_coff_get_external_symbols): Likewise.
92 * ecoff.c (ecoff_slurp_symbolic_header),
93 (_bfd_ecoff_slurp_symbolic_info, ecoff_slurp_reloc_table),
94 (_bfd_ecoff_slurp_armap, ecoff_link_add_object_symbols, READ),
95 (ecoff_indirect_link_order): Likewise.
96 * elf.c (bfd_elf_get_str_section, setup_group, elf_read_notes),
97 (_bfd_elf_slurp_version_tables): Likewise.
98 * elf32-m32c.c (m32c_elf_relax_section): Likewise.
99 * elf32-rl78.c (rl78_elf_relax_section): Likewise.
100 * elf32-rx.c (elf32_rx_relax_section): Likewise.
101 * elf64-alpha.c (READ): Likewise.
102 * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Likewise.
103 * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Likewise.
104 * elfcode.h (elf_slurp_symbol_table),
105 (elf_slurp_reloc_table_from_section): Likewise.
106 * elflink.c (elf_link_add_object_symbols),
107 (elf_link_check_versioned_symbol): Likewise.
108 * elfxx-mips.c (READ): Likewise.
109 * i386lynx.c (slurp_reloc_table): Likewise.
110 * lynx-core.c (lynx_core_file_p): Likewise.
111 * mach-o.c (bfd_mach_o_canonicalize_relocs),
112 (bfd_mach_o_read_symtab_strtab, bfd_mach_o_alloc_and_read),
113 (bfd_mach_o_read_prebound_dylib, bfd_mach_o_read_dyld_content
114 * pdp11.c (aout_get_external_symbols, slurp_reloc_table
115 * pef.c (bfd_pef_print_loader_section, bfd_pef_scan_start_address),
116 (bfd_pef_parse_symbols): Likewise.
117 * peicode.h (pe_ILF_object_p, pe_bfd_object_p
118 * som.c (setup_sections, som_slurp_string_table),
119 (som_slurp_reloc_table, som_bfd_count_ar_symbols),
120 (som_bfd_fill_in_ar_symbols): Likewise.
121 * vms-alpha.c (module_find_nearest_line, evax_bfd_print_dst),
122 (evax_bfd_print_image): Likewise.
123 * vms-lib.c (_bfd_vms_lib_archive_p): Likewise.
124 * wasm-module.c (wasm_scan): Likewise.
125 * xcofflink.c (xcoff_link_add_symbols): Likewise.
126 * xsym.c (bfd_sym_read_name_table),
127 (bfd_sym_print_type_information_table_entry): Likewise.
128 * libbfd.h: Regenerate.
129
806470a2
AM
1302020-02-19 Alan Modra <amodra@gmail.com>
131
132 * aoutx.h (slurp_reloc_table): Allocate reloc_cache after
133 reading external relocs.
134 * ecoff.c (ecoff_slurp_reloc_table): Likewise.
135 * archive.c (_bfd_write_archive_contents): Don't twiddle bfd_error
136 after bfd_bread.
137 * archive64.c (_bfd_archive_64_bit_slurp_armap): Remove unnecessary
138 bfd_release.
139 * elf32-m32c.c (m32c_offset_for_reloc): Make shndx_buf a bfd_byte*.
140 (m32c_elf_relax_section): Likewise.
141 * elf32-rl78.c (rl78_offset_for_reloc): Likewise.
142 (rl78_elf_relax_section): Likewise.
143 * elf32-rx.c (rx_offset_for_reloc): Likewise.
144 (elf32_rx_relax_section): Likewise.
145 * mach-o.c (bfd_mach_o_alloc_and_read): Move earlier with better
146 parameter types and use..
147 (bfd_mach_o_read_dylinker, bfd_mach_o_read_dylib),
148 (bfd_mach_o_read_fvmlib, bfd_mach_o_read_str): ..in these functions.
149 * peicode.h (pe_bfd_object_p): Don't zero the part of opthdr
150 being read from file, just the extra.
151 * som.c (som_slurp_symbol_table): Allocate internal symbol buffer
152 after reading external syms. Free on failure.
153
1f4361a7
AM
1542020-02-19 Alan Modra <amodra@gmail.com>
155
156 * coffcode.h (buy_and_read, coff_slurp_line_table),
157 (coff_slurp_symbol_table, coff_slurp_reloc_table): Replace
158 bfd_[z][m]alloc2 calls with _bfd_mul_overflow followed by the
159 corresponding bfd_alloc call. Adjust variables to suit.
160 * coffgen.c (_bfd_coff_get_external_symbols): Likewise.
161 * ecoff.c (_bfd_ecoff_slurp_symbolic_info),
162 (_bfd_ecoff_slurp_symbol_table, READ): Likewise.
163 * elf.c (bfd_elf_get_elf_syms, setup_group, bfd_section_from_shdr),
164 (swap_out_syms, _bfd_elf_slurp_version_tables): Likewise.
165 * elf32-m32c.c (m32c_elf_relax_section): Likewise.
166 * elf32-rl78.c (rl78_elf_relax_section): Likewise.
167 * elf32-rx.c (elf32_rx_relax_section): Likewise.
168 * elf64-alpha.c (READ): Likewise.
169 * elfcode.h (elf_object_p, elf_write_relocs, elf_write_shdrs_and_ehdr),
170 (elf_slurp_symbol_table, elf_slurp_reloc_table),
171 (bfd_from_remote_memory): Likewise.
172 * elfcore.h (core_find_build_id): Likewise.
173 * elfxx-mips.c (READ): Likewise.
174 * mach-o.c (bfd_mach_o_mangle_sections),
175 (bfd_mach_o_read_symtab_symbols, bfd_mach_o_read_thread),
176 (bfd_mach_o_read_dysymtab, bfd_mach_o_flatten_sections),
177 (bfd_mach_o_scan, bfd_mach_o_fat_archive_p): Likewise.
178 * som.c (setup_sections, som_prep_for_fixups)
179 (som_build_and_write_symbol_table, som_slurp_symbol_table),
180 (som_slurp_reloc_table, som_bfd_count_ar_symbols),
181 (som_bfd_fill_in_ar_symbols, som_slurp_armap),
182 (som_bfd_ar_write_symbol_stuff): Likewise.
183 * vms-alpha.c (vector_grow1): Likewise.
184 * vms-lib.c (vms_add_index): Likewise.
185 * wasm-module.c (wasm_scan_name_function_section): Likewise.
186 * libbfd.c (bfd_malloc2, bfd_realloc2, bfd_zmalloc2): Delete.
187 * opncls.c (bfd_alloc2, bfd_zalloc2): Delete.
188 * libbfd-in.h (bfd_malloc2, bfd_realloc2, bfd_zmalloc2),
189 (bfd_alloc2, bfd_zalloc2): Delete.
190 (_bfd_mul_overflow): Define.
191 * libbfd.h: Regenerate.
192
446f7ed5
AM
1932020-02-19 Alan Modra <amodra@gmail.com>
194
195 * elf.c (bfd_section_from_shdr): Use bfd_zalloc rather than
196 bfd_zalloc2.
197 (assign_section_numbers): Likewise.
198 (elf_map_symbols): Likewise, and bfd_alloc rather than bfd_alloc2.
199 (_bfd_elf_map_sections_to_segments): Use bfd_malloc rather than
200 bfd_malloc2, size_t amt, and unsigned tls_count.
201 (rewrite_elf_program_header): Use bfd_malloc and size_t amt.
202 * elflink.c (elf_create_symbuf): Use bfd_malloc.
203 (elf_output_implib): Use bfd_alloc.
204
b03202e3
AM
2052020-02-19 Alan Modra <amodra@gmail.com>
206
207 * bfd.c (struct bfd): Move format and direction to other
208 bitfields. Add "size".
209 * bfdio.c (bfd_get_size): Cache size when not writing file.
210 * opncls.c (bfd_get_debug_link_info_1): Allow for bfd_get_size
211 returning zero, ie. unknown.
212 (bfd_get_alt_debug_link_info): Likewise.
213 * bfd-in2.h: Regenerate.
214
7c5fa58e
AM
2152020-02-19 Alan Modra <amodra@gmail.com>
216
217 * coffgen.c (_bfd_coff_get_external_symbols): Don't call
218 bfd_get_file_size twice.
219 (_bfd_coff_read_string_table): Allow for bfd_get_file_size
220 zero, ie. unknown, return.
221 * elf-attrs.c (_bfd_elf_parse_attributes): Likewise.
222 * elfcode.h (elf_swap_shdr_in): Likewise.
223 (elf_object_p): Don't call bfd_get_file_size twice and correct
224 file size check.
225
96d3b80f
AM
2262020-02-19 Alan Modra <amodra@gmail.com>
227
228 * mach-o.c (bfd_mach_o_flatten_sections): Return a bfd_boolean,
229 FALSE if memory alloc fails. Adjust calls.
230 * som.c (som_prep_for_fixups): Likewise.
231 * vms-alpha.c (alpha_vms_add_fixup_lp, alpha_vms_add_fixup_ca),
232 (alpha_vms_add_fixup_qr, alpha_vms_add_fixup_lr),
233 (alpha_vms_add_lw_reloc, alpha_vms_add_qw_reloc): Likewise.
234 * som.c (som_build_and_write_symbol_table): Return via error_return
235 on seek failure.
236 * vms-alpha.c (VEC_APPEND): Adjust for vector_grow1 changes.
237 (VEC_APPEND_EL): Delete.
238 (vector_grow1): Return pointer to element. Catch overflow.
239 Return NULL on memory allocation failure.
240 (alpha_vms_add_fixup_lp): Replace VEC_APPEND_EL with VEC_APPEND.
241 (alpha_vms_add_fixup_ca): Likewise.
242 (alpha_vms_link_add_object_symbols): Check VEC_APPEND result
243 before using.
244 * elf.c (bfd_section_from_shdr): Check bfd_zalloc2 result.
245
986f0783
AM
2462020-02-19 Alan Modra <amodra@gmail.com>
247
248 * aix386-core.c (aix386_core_file_p): Use size_t for "amt".
249 * aout-target.h (object_p): Likewise.
250 * aout-tic30.c (tic30_aout_object_p): Likewise.
251 * aoutx.h (some_aout_object_p, mkobject, make_empty_symbol),
252 (emit_stringtab, write_syms, link_hash_table_create),
253 (aout_link_write_other_symbol): Likewise.
254 * archive.c (_bfd_generic_mkarchive, bfd_generic_archive_p),
255 (bfd_ar_hdr_from_filesystem, _bfd_write_archive_contents),
256 (_bfd_compute_and_write_armap): Likewise.
257 * archures.c (bfd_arch_list): Likewise.
258 * bfd.c (bfd_record_phdr): Likewise.
259 * binary.c (binary_canonicalize_symtab): Likewise.
260 * cisco-core.c (cisco_core_file_validate): Likewise.
261 * coff-arm.c (coff_arm_link_hash_table_create, find_thumb_glue),
262 (find_arm_glue, record_arm_to_thumb_glue),
263 (record_thumb_to_arm_glue): Likewise.
264 * coff-ppc.c (ppc_coff_link_hash_table_create, record_toc),
265 (ppc_allocate_toc_section): Likewise.
266 * coff-rs6000.c (_bfd_xcoff_mkobject, _bfd_xcoff_archive_p): Likewise.
267 * coff-sh.c (sh_relax_section): Likewise.
268 * coff64-rs6000.c (xcoff64_archive_p): Likewise.
269 * coffcode.h (handle_COMDAT, coff_new_section_hook),
270 (coff_set_alignment_hook, coff_mkobject),
271 (coff_compute_section_file_positions): Likewise.
272 * coffgen.c (coff_make_empty_symbol, coff_bfd_make_debug_symbol),
273 (coff_find_nearest_line_with_names),
274 ( bfd_coff_set_symbol_class): Likewise.
275 * cofflink.c (_bfd_coff_link_hash_table_create),
276 (_bfd_coff_link_input_bfd): Likewise.
277 * dwarf1.c (alloc_dwarf1_unit, alloc_dwarf1_func): Likewise.
278 * dwarf2.c (read_abbrevs, read_attribute_value, add_line_info),
279 (build_line_info_table, sort_line_sequences),
280 (line_info_add_include_dir, line_info_add_file_name),
281 (decode_line_info, scan_unit_for_symbols, parse_comp_unit),
282 (place_sections, _bfd_dwarf2_slurp_debug_info): Likewise.
283 * ecoff.c (_bfd_ecoff_mkobject, _bfd_ecoff_make_empty_symbol),
284 (_bfd_ecoff_find_nearest_line),
285 (_bfd_ecoff_bfd_link_hash_table_create): Likewise.
286 * ecofflink.c (bfd_ecoff_debug_init): Likewise.
287 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Likewise.
288 * elf-m10300.c (mn10300_elf_relax_section),
289 (elf32_mn10300_link_hash_table_create): Likewise.
290 * elf-strtab.c (_bfd_elf_strtab_init): Likewise.
291 * elf.c (make_mapping, copy_elf_program_header): Likewise.
292 * elf32-arm.c (elf32_arm_link_hash_table_create),
293 (elf32_arm_setup_section_lists, elf32_arm_check_relocs),
294 (elf32_arm_new_section_hook): Likewise.
295 * elf32-avr.c (elf_avr_new_section_hook),
296 (elf32_avr_link_hash_table_create, get_local_syms),
297 (elf32_avr_setup_section_lists): Likewise.
298 * elf32-bfin.c (bfinfdpic_elf_link_hash_table_create),
299 (bfin_link_hash_table_create): Likewise.
300 * elf32-cr16.c (elf32_cr16_link_hash_table_create): Likewise.
301 * elf32-cris.c (elf_cris_link_hash_table_create): Likewise.
302 * elf32-csky.c (csky_elf_link_hash_table_create),
303 (csky_elf_check_relocs, elf32_csky_setup_section_lists): Likewise.
304 * elf32-frv.c (frvfdpic_elf_link_hash_table_create): Likewise.
305 * elf32-hppa.c (elf32_hppa_link_hash_table_create),
306 (elf32_hppa_setup_section_lists, get_local_syms): Likewise.
307 * elf32-i386.c (elf_i386_check_relocs): Likewise.
308 * elf32-lm32.c (lm32_elf_link_hash_table_create): Likewise.
309 * elf32-m32r.c (m32r_elf_link_hash_table_create),
310 (m32r_elf_check_relocs): Likewise.
311 * elf32-m68hc1x.c (m68hc11_elf_hash_table_create),
312 (elf32_m68hc11_setup_section_lists),
313 (elf32_m68hc11_size_stubs): Likewise.
314 * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise.
315 * elf32-metag.c (elf_metag_link_hash_table_create),
316 (elf_metag_setup_section_lists): Likewise.
317 * elf32-microblaze.c (microblaze_elf_link_hash_table_create),
318 (microblaze_elf_check_relocs): Likewise.
319 * elf32-nds32.c (nds32_elf_link_hash_table_create),
320 (nds32_elf_check_relocs): Likewise.
321 * elf32-nios2.c (nios2_elf32_setup_section_lists),
322 (get_local_syms, nios2_elf32_check_relocs),
323 (nios2_elf32_link_hash_table_create): Likewise.
324 * elf32-or1k.c (or1k_elf_link_hash_table_create),
325 (or1k_elf_check_relocs): Likewise.
326 * elf32-ppc.c (ppc_elf_modify_segment_map, update_plt_info): Likewise.
327 * elf32-pru.c (pru_elf32_link_hash_table_create): Likewise.
328 * elf32-s390.c (elf_s390_link_hash_table_create),
329 (elf_s390_check_relocs): Likewise.
330 * elf32-score.c (score_elf_create_got_section),
331 (s3_elf32_score_new_section_hook),
332 (elf32_score_link_hash_table_create): Likewise.
333 * elf32-score7.c (score_elf_create_got_section),
334 (s7_elf32_score_new_section_hook): Likewise.
335 * elf32-sh.c (sh_elf_link_hash_table_create),
336 (sh_elf_check_relocs): Likewise.
337 * elf32-tic6x.c (elf32_tic6x_link_hash_table_create),
338 (elf32_tic6x_new_section_hook, elf32_tic6x_check_relocs): Likewise.
339 * elf32-tilepro.c (tilepro_elf_link_hash_table_create),
340 (tilepro_elf_check_relocs): Likewise.
341 * elf32-v850.c (remember_hi16s_reloc): Likewise.
342 * elf32-vax.c (elf_vax_link_hash_table_create): Likewise.
343 * elf32-xtensa.c (elf_xtensa_link_hash_table_create),
344 (elf_xtensa_new_section_hook): Likewise.
345 * elf64-alpha.c (elf64_alpha_bfd_link_hash_table_create),
346 (get_got_entry, elf64_alpha_check_relocs): Likewise.
347 * elf64-hppa.c (elf64_hppa_hash_table_create): Likewise.
348 * elf64-ia64-vms.c (elf64_ia64_object_p): Likewise.
349 * elf64-mmix.c (mmix_elf_new_section_hook): Likewise.
350 * elf64-ppc.c (ppc64_elf_new_section_hook),
351 (ppc64_elf_link_hash_table_create, update_local_sym_info),
352 (update_plt_info, ppc64_elf_check_relocs): Likewise.
353 * elf64-s390.c (elf_s390_link_hash_table_create),
354 (elf_s390_check_relocs): Likewise.
355 * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
356 * elflink.c (bfd_elf_link_record_local_dynamic_symbol),
357 (_bfd_elf_link_find_version_dependencies, elf_link_add_object_symbols),
358 (elf_link_add_archive_symbols, compute_bucket_count),
359 (bfd_elf_size_dynsym_hash_dynstr, _bfd_elf_link_hash_table_create),
360 (bfd_elf_get_bfd_needed_list, elf_link_swap_symbols_out),
361 (bfd_elf_final_link): Likewise.
362 * elfnn-aarch64.c (elfNN_aarch64_link_hash_table_create),
363 (elfNN_aarch64_setup_section_lists, elfNN_aarch64_check_relocs),
364 (elfNN_aarch64_new_section_hook): Likewise.
365 * elfnn-ia64.c (elfNN_ia64_object_p): Likewise.
366 * elfnn-riscv.c (riscv_elf_link_hash_table_create),
367 (riscv_elf_check_relocs): Likewise.
368 * elfxx-mips.c (_bfd_mips_elf_new_section_hook),
369 (_bfd_mips_elf_add_symbol_hook, _bfd_mips_elf_check_relocs),
370 (_bfd_mips_elf_modify_segment_map, _bfd_mips_elf_set_section_contents),
371 (_bfd_mips_elf_link_hash_table_create): Likewise.
372 * elfxx-sparc.c (_bfd_sparc_elf_link_hash_table_create),
373 (_bfd_sparc_elf_check_relocs),
374 (_bfd_sparc_elf_new_section_hook): Likewise.
375 * elfxx-tilegx.c (tilegx_elf_link_hash_table_create),
376 (tilegx_elf_check_relocs): Likewise.
377 * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Likewise.
378 * format.c (bfd_check_format_matches): Likewise.
379 * hash.c (_bfd_stringtab_init): Likewise.
380 * ihex.c (ihex_scan): Likewise.
381 * irix-core.c (irix_core_core_file_p): Likewise.
382 * linker.c (bfd_wrapped_link_hash_lookup),
383 (_bfd_generic_link_hash_table_create),
384 (_bfd_generic_reloc_link_order): Likewise.
385 * lynx-core.c (lynx_core_file_p): Likewise.
386 * netbsd-core.c (netbsd_core_file_p): Likewise.
387 * osf-core.c (osf_core_core_file_p): Likewise.
388 * pdp11.c (some_aout_object_p, mkobject, make_empty_symbol),
389 (link_hash_table_create, aout_link_write_other_symbol): Likewise.
390 * peXXigen.c (_bfd_XX_bfd_copy_private_section_data): Likewise.
391 * peicode.h (pe_mkobject): Likewise.
392 * ppcboot.c (ppcboot_mkobject, ppcboot_canonicalize_symtab): Likewise.
393 * ptrace-core.c (ptrace_unix_core_file_p): Likewise.
394 * sco5-core.c (read_uarea): Likewise.
395 * som.c (hppa_som_gen_reloc_type, som_object_p, som_prep_headers),
396 (som_write_fixups, som_write_space_strings, som_write_symbol_strings),
397 (som_finish_writing, som_canonicalize_symtab, som_new_section_hook),
398 (som_bfd_copy_private_section_data, bfd_som_set_section_attributes),
399 (bfd_som_attach_aux_hdr, som_write_armap): Likewise.
400 * srec.c (srec_scan): Likewise.
401 * syms.c (_bfd_generic_make_empty_symbol): Likewise.
402 * targets.c (bfd_target_list): Likewise.
403 * tekhex.c (first_phase, tekhex_sizeof_headers): Likewise.
404 * trad-core.c (trad_unix_core_file_p): Likewise.
405 * vms-alpha.c (vms_initialize, alpha_vms_bfd_link_hash_table_create),
406 (vms_new_section_hook): Likewise.
407 * wasm-module.c (wasm_make_empty_symbol): Likewise.
408 * xcofflink.c (xcoff_get_section_contents),
409 (_bfd_xcoff_bfd_link_hash_table_create, xcoff_set_import_path),
410 (xcoff_find_function, bfd_xcoff_link_record_set, xcoff_build_ldsym),
411 (bfd_xcoff_size_dynamic_sections, xcoff_link_input_bfd): Likewise.
412
2d0e1217
AM
4132020-02-19 Alan Modra <amodra@gmail.com>
414
415 * elfxx-riscv.c (riscv_multi_letter_ext_valid_p): Don't use C99.
416
99845b3b
L
4172020-02-13 H.J. Lu <hongjiu.lu@intel.com>
418
419 * plugin.c (try_load_plugin): Make plugin_list_iter an argument
420 and use it if it isn't NULL. Remove has_plugin_p argument. Add
421 a build_list_p argument. Don't search plugin_list. Short circuit
422 when building the plugin list.
423 (has_plugin): Renamed to has_plugin_list.
424 (bfd_plugin_set_plugin): Don't set has_plugin.
425 (bfd_plugin_specified_p): Check plugin_list instead.
426 (build_plugin_list): New function.
427 (load_plugin): Call build_plugin_list and use plugin_list.
428
22fe7df8
L
4292020-02-11 H.J. Lu <hongjiu.lu@intel.com>
430
431 PR binutils/25355
432 * plugin.c (try_claim): Always clean up for LTO wrapper.
433 (try_load_plugin): Treat each object as independent. Create a
434 copy for plugin name.
435
c675ec1e
NC
4362020-02-11 Nick Clifton <nickc@redhat.com>
437
438 * elf32-msp430.c (msp430_final_link_relocate): Always use longs
439 for addresses in print statements.
440 (msp430_elf_relax_delete_bytes): Likewise.
441 (msp430_elf_relax_add_words): Likewise.
442 (msp430_elf_relax_section): Likewise.
443
1d07a805
L
4442020-02-11 H.J. Lu <hongjiu.lu@intel.com>
445
446 * plugin.c (add_symbols): Clear plugin_data memory.
447
0aa99dcd
L
4482020-02-10 H.J. Lu <hongjiu.lu@intel.com>
449
450 PR binutils/25355
451 * configure.ac (HAVE_EXECUTABLE_SUFFIX): New AC_DEFINE.
452 (EXECUTABLE_SUFFIX): Likewise.
453 * config.in: Regenerated.
454 * configure: Likewise.
455 * plugin.c (bfd_plugin_close_and_cleanup): Removed.
456 (plugin_list_entry): Add all_symbols_read, cleanup_handler,
457 gcc, lto_wrapper, resolution_file, resolution_option, gcc_env,
458 real_bfd, real_nsyms, real_syms, lto_nsyms and lto_syms.
459 (get_lto_wrapper): New.
460 (setup_lto_wrapper_env): Likewise.
461 (current_plugin): Likewise.
462 (register_all_symbols_read): Likewise.
463 (register_cleanup): Likewise.
464 (get_symbols): Likewise.
465 (add_input_file): Likewise.
466 (bfd_plugin_close_and_cleanup): Likewise.
467 (claim_file): Removed.
468 (register_claim_file): Set current_plugin->claim_file.
469 (add_symbols): Make a copy of LTO symbols. Set lto_nsyms and
470 lto_syms in current_plugin.
471 (try_claim): Use current_plugin->claim_file. Call LTO plugin
472 all_symbols_read handler. Copy real symbols to plugin_data.
473 Call LTO plugin cleanup handler. Clean up for LTO wrapper.
474 (try_load_plugin): Don't reuse the previous plugin for LTO
475 wrapper. Set up GCC LTO wrapper if possible. Don't set
476 plugin_list_iter->claim_file.
477 (bfd_plugin_canonicalize_symtab): Use real LTO symbols if
478 possible.
479 * plugin.h (plugin_data_struct): Add real_bfd, real_nsyms and
480 real_syms.
481
ac4280da
JL
4822020-02-10 Jozef Lawrynowicz <jozef.l@mittosystems.com>
483
484 * elf32-msp430.c (msp430_elf_relax_section): Before relaxing a branch,
485 check if previous instruction matches a conditional jump inserted
486 earlier. Invert conditional jump and delete branch in this case.
487
8d6cb116
JL
4882020-02-10 Jozef Lawrynowicz <jozef.l@mittosystems.com>
489
490 * elf32-msp430.c (msp430_elf_relax_add_two_words): Rename to
491 msp430_elf_relax_add_words. Support insertion of either one or two
492 words.
493 (msp430_elf_relax_section): Catch opcode of 0x3c00 when relocation
494 needs to be grown. Handle insertion of branch instruction to replace
495 jump.
496
d60f5448
JL
4972020-02-10 Jozef Lawrynowicz <jozef.l@mittosystems.com>
498
499 * elf32-msp430.c (msp430_final_link_relocate): Add printf statements for
500 debugging relocations.
501 (msp430_elf_relax_delete_bytes): Likewise.
502 (msp430_elf_relax_add_two_words): Likewise.
503 (msp430_elf_relax_section): Likewise.
504
e1f85e11
AM
5052020-02-10 Alan Modra <amodra@gmail.com>
506
507 * archures.c: Wrap overlong z80 comments.
508 * bfd-in2.h: Regenerate.
509
9fc0b501
SB
5102020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
511
512 PR 25469
513 * archures.c: Add GBZ80 and Z80N machine values.
514 * reloc.c: Add BFD_RELOC_Z80_16_BE.
515 * coff-z80.c: Add support for new reloc.
516 * coffcode.h: Add support for new machine values.
517 * cpu-z80.c: Add support for new machine names.
518 * elf32-z80.c: Add support for new reloc.
519 * bfd-in2.h: Regenerate.
520 * libbfd.h: Regenerate.
521
9984857c
NC
5222020-02-07 Nick Clifton <nickc@redhat.com>
523
524 PR 23932
525 * elf.c (rewrite_elf_program_header): Do not complain if no
526 sections are mapped to a segment.
527
5242a0a0
L
5282020-02-06 H.J. Lu <hongjiu.lu@intel.com>
529
530 PR ld/25490
531 * elflink.c (_bfd_elf_gc_mark_extra_sections): Issue an error
532 for garbage collection on __patchable_function_entries section
533 without linked-to section.
534
b7d07216
L
5352020-02-06 H.J. Lu <hongjiu.lu@intel.com>
536
537 PR gas/25381
538 * bfd-in2.h: Regenerated.
539 * elflink.c (_bfd_elf_gc_mark_extra_sections): Call mark_hook
540 on section if gc_mark of any of its linked-to sections is set
541 and don't set gc_mark again.
542 * section.c (asection): Add linked_to_symbol_name to map_head
543 union.
544
b93a662b
MR
5452020-02-06 Maciej W. Rozycki <macro@wdc.com>
546
547 * elf32-v850.c (v850_elf_relax_section): Fix the index used for
548 reporting an unrecognized instruction with R_V850_LONGJUMP.
549
6df4c9c2
AM
5502020-02-05 Alan Modra <amodra@gmail.com>
551
552 * elf64-ppc.c (ppc_stub_plt_branch): Match comment with reality.
553
24872cb3
AM
5542020-02-04 Alan Modra <amodra@gmail.com>
555
556 * elf32-ppc.c (ppc_elf_relocate_section): After applying
557 R_PPC_VLE_ADDR20, goto copy_reloc.
558
ef4627fa
L
5592020-02-02 H.J. Lu <hongjiu.lu@intel.com>
560
561 * bfd-in2.h: Regenerated.
562 * section.c (SEC_ASSEMBLER_SECTION_ID): Fix a typo in comments.
563
a8c4d40b
L
5642020-02-02 H.J. Lu <hongjiu.lu@intel.com>
565
566 PR gas/25380
567 * bfd-in2.h: Regenerated.
568 * ecoff.c (bfd_debug_section): Add section_id.
569 * section.c (bfd_section): Add section_id.
570 (SEC_ASSEMBLER_SECTION_ID): New.
571 (BFD_FAKE_SECTION): Add section_id.
572
5a9212a1
NC
5732020-02-01 Nick Clifton <nickc@redhat.com>
574
575 * config.bfd: Move the c30-aout and tic30-aout targets onto the
576 obsolete list.
577
e7cbe0c4
SL
5782020-01-31 Sandra Loosemore <sandra@codesourcery.com>
579
580 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): DW_EH_PE_datarel
581 encodings are relative to the GOT on nios2, too.
582
72ebe8c5
AM
5832020-01-31 Alan Modra <amodra@gmail.com>
584
585 * Makefile.am (elf32-target.h, elf64-target.h): Don't use a temp
586 file. Use $< and $@ in rules.
587 (elf32-aarch64.c, elf64-aarch64.c): Likewise.
588 (elf32-ia64.c, elf64-ia64.c): Likewise.
589 (elf32-riscv.c, elf64-riscv.c): Likewise.
590 (peigen.c, pepigen.c, pex64igen.c): Likewise.
591 (elf32-aarch64.c, elf64-aarch64.c): Don't emit $srcdir on #line.
592 (elf32-riscv.c, elf64-riscv.c): Likewise, and use $(SED).
593 (elf32-ia64.c, elf64-ia64.c): Do emit #line.
594 (peigen.c, pepigen.c, pex64igen.c): Likewise.
595 * Makefile.in: Regenerate.
596
327301a4
AM
5972020-01-31 Alan Modra <amodra@gmail.com>
598
599 PR 4110
600 * elf.c (setup_group): Don't clear entire section contents,
601 just the padding after group flags. Release alloc'd memory
602 after a seek or read failure.
603
b5d36aaa
JT
6042020-01-16 Jon Turney <jon.turney@dronecode.org.uk>
605
606 * peXXigen.c (pe_is_repro): New function.
607 (_bfd_XX_print_private_bfd_data_common): Note timestamp is
608 actually a build hash if PE_IMAGE_DEBUG_TYPE_REPRO is present.
609
1957ab10
JT
6102020-01-16 Jon Turney <jon.turney@dronecode.org.uk>
611
612 * peXXigen.c (debug_type_names): Add names for new debug data type
613 values.
614
87b2920f
JT
6152020-01-16 Jon Turney <jon.turney@dronecode.org.uk>
616
617 * peXXigen.c (pe_print_debugdata): Fix the iteration variable for
618 inner loop. Fix a memory leak.
619
72913831
AM
6202020-01-30 Alan Modra <amodra@gmail.com>
621
622 * coffgen.c (coff_real_object_p): Don't clear obj_coff_keep_syms
623 or obj_coff_keep_strings here.
624 (coff_get_normalized_symtab): Free external syms directly.
625 * xcofflink.c (xcoff_link_input_bfd): Restore obj_coff_keep_syms
626 on error exit path.
627
c35d018b
JW
6282020-01-27 Jim Wilson <jimw@sifive.com>
629
630 * cpu-riscv.c (riscv_scan): New.
631 (N): Change bfd_default_scan to riscv_scan.
632
086b06f3
AS
6332020-01-27 Andreas Schwab <schwab@suse.de>
634
635 * Makefile.am (ALL_MACHINES): Remove cpu-plugin.lo.
636 (ALL_MACHINES_CFILES): Remove cpu-plugin.c.
637 * Makefile.in: Regenerate.
638 * cpu-plugin.c: Remove.
639 * archures.c (enum bfd_architecture): Remove bfd_arch_plugin.
640 (bfd_plugin_arch): Remove declaration.
641 * bfd-in2.h: Regenerate.
642 * po/SRC-POTFILES.in: Regenerate.
643
3024a17a
AM
6442020-01-27 H.J. Lu <hongjiu.lu@intel.com>
645 Alan Modra <amodra@gmail.com>
646
647 PR ld/25458
648 * elflink.c (_bfd_elf_gc_mark_rsec): Mark all weak aliases.
649
b5f998b2
JW
6502020-01-24 Jim Wilson <jimw@sifive.com>
651
652 * elfxx-riscv.c (riscv_get_prefix_class): Format s case like others.
653 (riscv_parse_prefixed_ext): Fix s extension comment and reword to
654 avoid over long line.
655
caa31cfa
NC
6562020-01-24 Nick Clifton <nickc@redhat.com>
657
658 PR 25447
659 * coffgen.c (_bfd_coff_close_and_cleanup): Do not clear the keep
660 syms and keep strings flags as these may have been set in order to
661 prevent a bogus call to free.
662
24e648d4
NC
6632020-01-23 Nick Clifton <nickc@redhat.com>
664
665 * po/fr.po: Updated French translation.
666
67641dd3
AM
6672020-01-23 Alan Modra <amodra@gmail.com>
668
669 PR 25444
670 * elf.c (assign_file_positions_for_load_sections): Avoid divide
671 by zero when p_align is zero.
672
403d1bd9
JW
6732020-01-22 Maxim Blinov <maxim.blinov@embecosm.com>
674
675 * bfd/elfnn-riscv.c (riscv_skip_prefix): New.
676 (riscv_prefix_cmp): Likewise.
677 (riscv_non_std_ext_p): Deleted.
678 (riscv_std_sv_ext_p): Likewise.
679 (riscv_non_std_sv_ext_p): Likewise.
680 (riscv_merge_non_std_and_sv_ext): Rename to...
681 (riscv_merge_multi_letter_ext): and modified to use riscv_prefix_cmp.
682 (riscv_merge_arch_attr_info): Replace 3 calls to
683 riscv_merge_non_std_and_sv_ext with single call to
684 riscv_merge_multi_letter_ext.
685 * bfd/elfxx-riscv.c (riscv_parse_std_ext): Break if we
686 encounter a 'z' prefix.
687 (riscv_get_prefix_class): New function, return prefix class based
688 on first few characters of input string.
689 (riscv_parse_config): New structure to factor out minor differences
690 in extension class parsing behaviour.
691 (riscv_parse_sv_or_non_std_ext): Rename to...
692 (riscv_parse_prefixed_ext): and parameterise with
693 riscv_parse_config.
694 (riscv_std_z_ext_strtab, riscv_std_s_ext_strtab): New.
695 (riscv_multi_letter_ext_valid_p): New.
696 (riscv_ext_x_valid_p, riscv_ext_z_valid_p, riscv_ext_s_valid_p): New.
697 (riscv_parse_subset): Delegate all non-single-letter parsing work
698 to riscv_parse_prefixed_ext.
699 * bfd/elfxx-riscv.h (riscv_isa_ext_class): New type.
700 (riscv_get_prefix_class): Declare.
701
a804e476
AM
7022020-01-22 Alan Modra <amodra@gmail.com>
703
704 * elf64-ppc.c (struct ppc_link_hash_table): Add tga_group.
705 (ppc64_elf_archive_symbol_lookup): Extract __tls_get_addr_opt for
706 __tls_get_addr_desc.
707 (ppc64_elf_size_stubs): Add section for linker generated
708 __tls_get_addr_desc wrapper function. Loop at least once if
709 generating this function.
710 (emit_tga_desc, emit_tga_desc_eh_frame): New functions.
711 (ppc64_elf_build_stubs): Generate __tls_get_addr_desc.
712
9e7028aa
AM
7132020-01-22 Alan Modra <amodra@gmail.com>
714
715 * elf64-ppc.h (struct ppc64_elf_params): Add no_tls_get_addr_regsave.
716 * elf64-ppc.c (struct ppc_link_hash_table): Add tga_desc and
717 tga_desc_fd.
718 (is_tls_get_addr): Match tga_desc and tga_desc_df too.
719 (STDU_R1_0R1, ADDI_R1_R1): Define.
720 (tls_get_addr_prologue, tls_get_addr_epilogue): New functions.
721 (ppc64_elf_tls_setup): Set up tga_desc and tga_desc_fd. Indirect
722 tga_desc_fd to opt_fd, and tga_desc to opt. Set
723 no_tls_get_addr_regsave.
724 (branch_reloc_hash_match): Add hash3 and hash4.
725 (ppc64_elf_tls_optimize): Handle tga_desc_fd and tga_desc too.
726 (ppc64_elf_size_dynamic_sections): Likewise.
727 (ppc64_elf_relocate_section): Likewise.
728 (plt_stub_size, build_plt_stub): Likewise. Size regsave
729 __tls_get_addr stub.
730 (build_tls_get_addr_stub): Build regsave __tls_get_addr stub and
731 eh_frame.
732 (ppc_size_one_stub): Handle tga_desc_fd and tga_desc too. Size
733 eh_frame for regsave __tls_get_addr.
734
abc489c6
AM
7352020-01-22 Alan Modra <amodra@gmail.com>
736
737 * elf64-ppc.c (ppc64_elf_size_stubs): Correct condition under
738 which __tls_get_addr calls will be eliminated.
739
26916852
NC
7402020-01-20 Nick Clifton <nickc@redhat.com>
741
742 * po/pt.po: Updates Portuguese translation.
743 * po/ru.po: Updated Russian translation.
744 * po/uk.po: Updated Ukranian translation.
745
14470f07
L
7462020-01-20 H.J. Lu <hongjiu.lu@intel.com>
747
748 PR ld/25416
749 * elf64-x86-64.c (elf_x86_64_check_tls_transition): Support
750 "rex leal x@tlsdesc(%rip), %reg" and "call *x@tlsdesc(%eax)" in
751 X32 mode.
752 (elf_x86_64_relocate_section): In x32 mode, for GDesc -> LE
753 transition, relax "rex leal x@tlsdesc(%rip), %reg" to
754 "rex movl $x@tpoff, %reg", for GDesc -> IE transition, relax
755 "rex leal x@tlsdesc(%rip), %reg" to
756 "rex movl x@gottpoff(%rip), %eax". For both transitions, relax
757 "call *(%eax)" to "nopl (%rax)".
758
b9ca1af6
AM
7592020-01-20 Alan Modra <amodra@gmail.com>
760
761 * elf64-ppc.c (LD_R11_0R3, CMPDI_R11_0, STD_R11_0R1, LD_R11_0R1),
762 (MTLR_R11): Don't define.
763 (LD_R0_0R3, CMPDI_R0_0): Define.
764 (build_tls_get_addr_stub): Don't use r11 in stub.
765
ed7007c1
AM
7662020-01-20 Alan Modra <amodra@gmail.com>
767
768 * elf64-ppc.c (ppc_elf_hash_entry): New function, use throughout file.
769 (defined_sym_val, is_tls_get_addr): Likewise.
770
1b1bb2c6
NC
7712020-01-18 Nick Clifton <nickc@redhat.com>
772
773 * version.m4 (BFD_VERSION): Set to 2.34.50.
774 * configure: Regenerate.
775 * po/bfd.pot: Regenerate.
776
ae774686
NC
7772020-01-18 Nick Clifton <nickc@redhat.com>
778
779 Binutils 2.34 branch created.
780
07f1f3aa
CB
7812020-01-17 Christian Biesinger <cbiesinger@google.com>
782
783 * coff-arm.c: Fix spelling error (seperate).
784 * elfxx-riscv.c (riscv_parse_sv_or_non_std_ext): Fix spelling
785 error (seperate).
786 * sysdep.h (strnlen): Fix spelling error (seperate).
787
0d1cc75d
LB
7882020-01-15 Lars Brinkhoff <lars@nocrew.org>
789
790 PR 20694
791 * pdp11.c (TARGET_PAGE_SIZE): Set to 8192.
792
e1c6cf61
AM
7932020-01-15 Alan Modra <amodra@gmail.com>
794
795 PR 25384
796 * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Update comment.
797 (ppc64_elf_adjust_dynamic_symbol): Don't allow .dynbss copies
798 of function symbols unless dot symbols are present. Do warn
799 whenever one is created, regardles of whether a PLT entry is
800 also emitted for the function symbol.
801
ef4e5ba5
AM
8022020-01-14 Alan Modra <amodra@gmail.com>
803
804 * som.c (som_bfd_count_ar_symbols): Error when file position
805 of symbols on chains is not strictly increasing.
806
8ab484c2
AM
8072020-01-14 Alan Modra <amodra@gmail.com>
808
809 * vms.h (VMS_DEBUG): Define as 0.
810 * vms-alpha.c (image_write): Move debug output after bounds check.
811 Tidy bounds check.
812 (_bfd_vms_slurp_eihd): Warning fix.
813 (_bfd_vms_slurp_etir): Init variables to avoid bogus warnings.
814
b50ef514
AM
8152020-01-13 Alan Modra <amodra@gmail.com>
816
817 * vms-alpha.c (_bfd_vms_slurp_egsd): Ensure minimum size even
818 for "ignored" records.
819
0c0adcc5
AM
8202020-01-13 Alan Modra <amodra@gmail.com>
821
822 * wasm-module.c (wasm_scan_name_function_section): Formatting.
823 Delete asect name check. Move asect NULL check to wasm_object_p.
824 Correct bounds check of sizes against end. Replace uses of
825 bfd_zalloc with bfd_alloc, zeroing only necessary bytes. Use
826 just one bfd_release.
827 (wasm_scan): Don't use malloc/strdup for section names,
828 bfd_alloc instead. Simplify code prefixing section name.
829 Formatting. Don't attempt to free memory here..
830 (wasm_object_p): ..do so here.
831
7f026732
SN
8322020-01-10 Szabolcs Nagy <szabolcs.nagy@arm.com>
833
834 PR ld/22269
835 * elf32-arm.c (elf32_arm_final_link_relocate): Use
836 UNDEFWEAK_NO_DYNAMIC_RELOC.
837 (allocate_dynrelocs_for_symbol): Likewise.
838
8cd0e5e9
TC
8392020-01-10 Tamar Christina <tamar.christina@arm.com>
840
841 PR 25210
842 * elfnn-aarch64.c (_bfd_aarch64_create_stub_section): Remove elfclass.
843
71780f45
AM
8442020-01-10 Alan Modra <amodra@gmail.com>
845
846 * coff-alpha.c (alpha_ecoff_object_p): Calculate size in bfd_size_type.
847
b899eb3b
NC
8482020-01-09 Nick Clifton <nickc@redhat.com>
849
850 PR 25221
851 * bfd.c (bfd_convert_section_contents): Check for a compress
852 header size that is larger than the actual section size.
853
4c6ee646
AM
8542020-01-08 Alan Modra <amodra@gmail.com>
855
856 PR 25351
857 * elflink.c (bfd_elf_final_link): Call _bfd_fix_excluded_sec_syms
858 after removing sections.
859
85f78364
JW
8602020-01-06 Jim Wilson <jimw@sifive.com>
861
862 PR 25205
863 * elfnn-riscv.c (riscv_elf_relocate_section) <R_RISCV_CALL>: Add
864 check for !bfd_link_pic (info).
865 <R_RISCV_CALL_PLT>: Move next to R_RISCV_CALL.
866 <R_RISCV_JAL>: Add comment.
867 (_bfd_riscv_relax_section): For plt.offset check, add check for
868 bfd_link_pic (info). Add comment.
869
49078ece
AM
8702020-01-06 Alan Modra <amodra@gmail.com>
871
872 * format.c (bfd_check_format_matches): Ignore bfd_error on target
873 match failures. Don't init to bfd_error_wrong_format before
874 calling _bfd_check_format.
875
ab356be7
AM
8762020-01-06 Alan Modra <amodra@gmail.com>
877
878 * vms-alpha.c (_bfd_vms_push, _bfd_vms_pop): Return pass/fail
879 status rather than exiting on stack overflow or underflow.
880 (_bfd_vms_slurp_etir): Adjust to suit.
881
85d86817
AM
8822020-01-06 Alan Modra <amodra@gmail.com>
883
884 * som.c (som_bfd_fill_in_ar_symbols): Bounds check som_dict index.
885
3e6aa775
AM
8862020-01-06 Alan Modra <amodra@gmail.com>
887
888 * mach-o.c (bfd_mach_o_read_dylinker): Don't read past end of
889 command. Check name offset is within command.
890 (bfd_mach_o_read_dylib, bfd_mach_o_read_prebound_dylib),
891 (bfd_mach_o_read_prebind_cksum, bfd_mach_o_read_twolevel_hints),
892 (bfd_mach_o_read_fvmlib, bfd_mach_o_read_dysymtab),
893 (bfd_mach_o_read_symtab, bfd_mach_o_read_uuid),
894 (bfd_mach_o_read_linkedit, bfd_mach_o_read_str),
895 (bfd_mach_o_read_dyld_info, bfd_mach_o_read_version_min),
896 (bfd_mach_o_read_encryption_info, bfd_mach_o_read_source_version),
897 (bfd_mach_o_read_encryption_info_64, bfd_mach_o_read_main),
898 (bfd_mach_o_read_note, bfd_mach_o_read_build_version),
899 (bfd_mach_o_read_segment): Similarly.
900 (bfd_mach_o_read_thread): Properly bound check thread struct.
901 Don't repeat checks on second loop.
902 (bfd_mach_o_read_command): Fail on invalid command length.
903
ea933f17
AM
9042020-01-04 Alan Modra <amodra@gmail.com>
905
906 * format.c (bfd_check_format_matches): Add preserve_match.
907 Save initial bfd state in "preserve", matched bfd state in
908 "preserve_match". Save just the first match. Release
909 bfd_alloc memory. Restore and finish preserved state as
910 appropriate on all function exit paths.
911
f24bdec4
AM
9122020-01-04 Alan Modra <amodra@gmail.com>
913
914 * mmo.c (mmo_mkobject): Allocate tdata with bfd_zalloc.
915
991fb595
AM
9162020-01-04 Alan Modra <amodra@gmail.com>
917
918 * coffgen.c (coff_real_object_p): Free malloc'd memory on target
919 match too.
920
f2a3559d
NC
9212020-01-03 Nick Clifton <nickc@redhat.com>
922
923 PR 25307
924 (bfd_pef_parse_function_stubs): Correct the test that ensures that
925 there is enough data remaining in the code buffer before
926 attempting to read a function stub.
927
7a0fb7be
NC
9282020-01-03 Nick Clifton <nickc@redhat.com>
929
930 PR 25308
931 * elf-properties.c (_bfd_elf_convert_gnu_properties): Check the
932 return value from bfd_malloc.
933 * elf32-arm.c (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
934 (bfd_elf32_arm_stm32l4xx_fix_veneer_locations): Likewise.
935 (elf32_arm_filter_cmse_symbols): Likewise.
936 (elf32_arm_write_section): Likewise.
937 * mach-o.c (bfd_mach_o_core_fetch_environment): Likewise.
938 (bfd_mach_o_follow_dsym): Likewise.
939 * pef.c (bfd_pef_print_loader_section): Likewise.
940 (bfd_pef_scan_start_address): Likewise.
941 (bfd_pef_parse_function_stubs): Likewise.
942 (bfd_pef_parse_symbols): Likewise.
943
b26a3d58
ST
9442020-01-03 Sergei Trofimovich <siarheit@google.com>
945
946 * elfnn-ia64.c (elfNN_ia64_merge_private_bfd_data): don't fail
947 on binary inputs ld/PR25316.
948 (is_ia64_elf): new helper to filter on ia64 objects.
949
4bb7a87e
JB
9502020-01-03 Jan Beulich <jbeulich@suse.com>
951
952 * mach-o.c (cpusubtype, bfd_mach_o_header_p): Insert underscore
953 in parameter names.
954 (bfd_mach_o_scan): Insert underscore in two variable names.
955
6655dba2
SB
9562020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
957
958 * Makefile.am: Add z80-elf target support.
959 * configure.ac: Likewise.
960 * targets.c: Likewise.
961 * Makefile.in: Regenerate.
962 * configure: Regenerate.
963 * config.bfd: Add z80-elf target support and new arches: ez80 and
964 z180.
965 * elf32-z80.c: New file.
966 * archures.c: Add new z80 architectures: eZ80 and Z180.
967 * coffcode.h: Likewise.
968 * cpu-z80.c: Likewise.
969 * coff-z80.c: Add new relocations for Z80 target and local label
970 check.
971 * reloc.c: Add new relocs.
972 * bfd-in2.h: Regenerate.
973 * libbfd.h: Regenerate.
974
0db131fb
TC
9752020-01-02 Tamar Christina <tamar.christina@arm.com>
976
977 PR 25210
978 PR 24753
979 * elfnn-aarch64.c (_bfd_aarch64_create_stub_section): Set ELF class.
980
b14ce8bf
AM
9812020-01-01 Alan Modra <amodra@gmail.com>
982
983 Update year range in copyright notice of all files.
984
0b114740 985For older changes see ChangeLog-2019
3499769a 986\f
0b114740 987Copyright (C) 2020 Free Software Foundation, Inc.
3499769a
AM
988
989Copying and distribution of this file, with or without modification,
990are permitted in any medium without royalty provided the copyright
991notice and this notice are preserved.
992
993Local Variables:
994mode: change-log
995left-margin: 8
996fill-column: 74
997version-control: never
998End: