3 * readelf.c: Include elf/bpf.h.
4 (guess_is_rela): Hanle EM_BPF.
5 (dump_relocations): Likewise.
6 (is_32bit_abs_reloc): Likewise.
7 * testsuite/binutils-all/nm.exp: Add bpf-*-* to the list of
12 * dwarf.c (dwarf_regnames_aarch64): Add SVE registers.
13 * testsuite/binutils-all/aarch64/sve-dwarf-registers.d: New test.
14 * testsuite/binutils-all/aarch64/sve-dwarf-registers.s: New test.
19 * testsuite/binutils-all/readelf.ss-mips: Update reference output.
20 * testsuite/binutils-all/readelf.ss-tmips: Likewise.
24 * po/ca.po: Updated Catalan translation.
28 * NEWS: Mention Armv8.1-M Mainline and MVE.
32 * readelf.c (arm_attr_tag_MVE_arch): New array for Tag_MVE_arch values.
33 (arm_attr_public_tag arm_attr_public_tags): Add case for Tag_MVE_arch.
38 * objcopy.c: Add new option --verilog-data-width. Use it to set
39 the value of VerilogDataWidth.
40 * doc/binutils.texi: Document the new option.
41 * testsuite/binutils-all/objcopy.exp: Run tests of new option.
42 * testsuite/binutils-all/verilog-1.hex: New file.
43 * testsuite/binutils-all/verilog-2.hex: New file.
44 * testsuite/binutils-all/verilog-4.hex: New file.
45 * testsuite/binutils-all/verilog-8.hex: New file.
46 * NEWS: Mention the new feature.
50 * testsuite/binutils-all/objdump.exp (test_objdump_disas_limited),
51 (test_objdump_content_limited): Add text arg, use in place of .text.
52 (bintest_signed.o): Call get_standard_section_names for name of
57 * objdump.c (sign_extend_address): New function.
58 (dump_bfd): Sign-extend user-specified start/stop addresses
59 for targets that need it.
60 * testsuite/binutils-all/objdump.exp: Add tests for objdump
61 with start and stop addresses in higher address ranges.
65 * testsuite/binutils-all/objdump.exp: Correct executable
67 * testsuite/binutils-all/compress.exp: Likewise.
72 * nm.c: (print_format): New variable.
73 (value_format_32bit, value_format_64bit): Delete.
74 (set_print_radix): Remove code to alter value_format strings.
75 (set_output_format): Record chosen format in print_format.
76 (get_print_format): New function - constructs a printf formatting
77 string according to the requirements of size, radix, and output
79 (print_value): Use get_print_format.
80 * testsuite/binutils-all/nm.exp: Add tests of "nm --format=posix"
85 * wrstabs.c (stab_start_class_type): Add assert to work around
90 * objcopy.c (strip_main): Do not enable note merging by default if
91 just stripping debug or dwo information.
92 * doc/binutils.texi (strip): Update documentation.
96 * README-how-to-make-a-release: Add note to update the symbolic
97 link from "docs" to "docs-2.x" on the sourceware website.
101 * testsuite/binutils-all/copy-2.d: Don't run for ns32k-*-*.
102 * testsuite/binutils-all/copy-3.d: Likewise.
106 * readelf.c (arm_attr_tag_CPU_arch): Add entry for Armv8.1-M Mainline.
110 * readelf.c (decode_x86_isa): Handle
111 GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
112 * testsuite/binutils-all/i386/pr21231b.d: Updated.
113 * testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
117 * testsuite/binutils-all/nm.exp: Count i386-moss as ELF.
121 * testsuite/binutils-all/aarch64/in-order-all.d: Update.
122 * testsuite/binutils-all/aarch64/in-order.d: Likewise.
123 * testsuite/binutils-all/aarch64/out-of-order-all.d: Likewise.
124 * testsuite/binutils-all/aarch64/out-of-order.d: Likewise.
125 * testsuite/binutils-all/aarch64/out-of-order.s: Likewise.
126 * testsuite/binutils-all/arm/in-order-all.d: Likewise.
127 * testsuite/binutils-all/arm/in-order.d: Likewise.
128 * testsuite/binutils-all/arm/out-of-order-all.d: Likewise.
129 * testsuite/binutils-all/arm/out-of-order.d: Likewise.
130 * testsuite/binutils-all/arm/out-of-order.s: Likewise.
134 * MAINTAINERS: Take over Dave Brolley's maintainerships for FR30,
139 * objdump.c (dump_relocs_in_section): Warning fix.
143 * testsuite/binutils-all/arm/in-order-all.d: New test.
144 * testsuite/binutils-all/arm/in-order.d: New test.
145 * testsuite/binutils-all/arm/objdump.exp: Support .d tests.
146 * testsuite/binutils-all/arm/out-of-order-all.d: New test.
147 * testsuite/binutils-all/arm/out-of-order.T: New test.
148 * testsuite/binutils-all/arm/out-of-order.d: New test.
149 * testsuite/binutils-all/arm/out-of-order.s: New test.
154 * testsuite/binutils-all/aarch64/in-order-all.d: New test.
155 * testsuite/binutils-all/aarch64/out-of-order-all.d: New test.
156 * testsuite/binutils-all/aarch64/out-of-order.d:
160 * testsuite/binutils-all/aarch64/in-order.d: New test.
161 * testsuite/binutils-all/aarch64/out-of-order.d: Disassemble data as
166 * objdump.c (disassemble_bytes): Pass stop_offset.
167 * testsuite/binutils-all/aarch64/out-of-order.T: New test.
168 * testsuite/binutils-all/aarch64/out-of-order.d: New test.
169 * testsuite/binutils-all/aarch64/out-of-order.s: New test.
174 * objdump.c (load_specific_debug_section): Check that the amount
175 of memory to be allocated matches the size of the section.
179 * readelf.c (get_aarch64_dynamic_type): Add case for
181 (dynamic_section_aarch64_val): Likewise.
186 * readelf.c (get_aarch64_dynamic_type): New.
187 (get_dynamic_type): Use above for EM_AARCH64.
188 (dynamic_section_aarch64_val): New.
189 (process_dynamic_section): Use above for EM_AARCH64.
193 * readelf.c (decode_aarch64_feature_1_and): New.
194 (print_gnu_property_note): Add case for AArch64 gnu notes.
198 * objdump.c (load_specific_debug_section): Don't compare section
199 size against file size.
200 (dump_relocs_in_section): Don't compare reloc size against file size.
201 Print "failed to read relocs" on bfd_get_reloc_upper_bound error.
206 * doc/binutils.texi (ar cmdline): Fix spelling mistake.
210 * po/sv.po: Updated Swedish translation.
215 * testsuite/lib/binutils-common.exp (run_dump_test): Replace a use
216 of "lmap" with a "foreach" loop.
221 * objcopy.c (copy_archive): Do not copy thin archives.
225 * testsuite/lib/binutils-common.exp: Allow multiple "as" lines.
229 * objdump.c (sym_ok): New function.
230 (find_symbol_for_address): Use new function.
231 (disassemble_section): Compare sections by name, not pointer.
232 (dump_dwarf): Move code to initialise byte_get pointer and iterate
233 over separate debug files from here to ...
234 (dump_bfd): ... here. Add parameter indicating that a separate
235 debug info file is being dumped. For main file, pull in the
236 symbol tables from all separate debug info files.
237 (display_object): Update call to dump_bfd.
238 * doc/binutils.texi: Document extened behaviour of the
239 --dwarf=follow-links option.
240 * NEWS: Mention this new feature.
241 * testsuite/binutils-all/objdump.WK2: Update expected output.
242 * testsuite/binutils-all/objdump.exp (test_follow_debuglink): Add
243 options and dump file parameters.
245 * testsuite/binutils-all/objdump.WK3: New file.
246 * testsuite/binutils-all/readelf.exp: Change expected output for
248 * testsuite/binutils-all/readelf.wKis: New file.
253 * dwarf.h (struct separate_info): New structure for containing
254 information on separate debug info files.
255 * dwarf.c (struct dwo_info): New structure for containing dwo
257 (first_dwo_info): Chain of dwo_info structures.
258 (first_separate_file): Chain of separate_info structures.
259 (separate_debug_file, separate_debug_filename): Delete.
260 (fetch_alt_indirect_string): Scan all separate debug info files
261 for the requested string.
262 (add_dwo_info): New function.
263 (add_dwo_name): New function.
264 (add_dwo_dir): New function.
265 (add_dwo_id: New function.
266 (free_dwo_info): New function.
267 (read_and_display_attr_value): Store DWO data using the new
269 (load_debug_section_with_follow): If necessary, scan the list of
270 separate debug info files for the requested section.
271 (add_separate_debug_file): New function.
272 (load_separate_debug_info): Call add_separate_debug_file to store
273 the information on the newly loaded file.
274 (load_dwo_file): Likewise.
275 (load_separate_debif_file): Rename to load_separate_debug_files.
276 Change return type to boolean. If following links then attempt to
277 load all separate debug info files, not just the first one.
278 (free_debug_memory): Release memory in dwo_info and separate_info
280 * objdump.c (dump_dwarf): Iterate over all loaded debg info files.
281 * readelf.c (process_object): Likewise.
282 * doc/debug.options.texi: Update descriptions of links and
283 follow-links options.
284 * testsuite/binutils-all/objdump.WK2: Update expected output.
285 * testsuite/binutils-all/readelf.k2: Likewise.
286 * NEWS: Announce the new feature.
291 * unwind-ia64.c: Include sysdep.h.
292 (unw_decode_x1): Check current pointer against end pointer before
294 (unw_decode_x2): Likewise.
295 (unw_decode_x3): Likewise.
296 (unw_decode_x4): Likewise.
297 (unw_decode_r2): Likewise.
298 (unw_decode_p2_p5): Likewise.
299 (unw_decode_p7_p10): Likewise.
300 (unw_decode): Likewise.
305 * readelf.c (print_stapsdt_note): Harden against corrupt notes.
308 * unwind-ia64.c (unw_decode_uleb128): Add end parameter, use it to
309 prevent walking off the end of the buffer.
310 (unw_decode_x1): Add end paramter, pass it to unw_decode_uleb128.
311 (unw_decode_x2): Likewise.
312 (unw_decode_x3): Likewise.
313 (unw_decode_x4): Likewise.
314 (unw_decode_r2): Pass the end parameter to unw_decode_uleb128.
315 (unw_decode_r3): Likewise.
316 (unw_decode_p7_p10): Likewise.
317 (unw_decode_b2): Likewise.
318 (unw_decode_b3_x4): Likewise.
321 * readelf.c (process_mips_specific): Check for an options section
322 that is too small to even contain a single option.
325 * readelf.c (print_ia64_vms_note): Harden against corrupt notes.
331 * readelf.c (get_data): Avoid possibility of overflow when
332 checking for a read that may extend past end of file.
333 (process_program_headers): Likewise.
338 * objdump.c (dump_bfd_private_header): Print warning if
339 bfd_print_private_bfd_data returns false.
344 * README-how-to-make-a-release: Use git clean to delete spurious
345 files from the local source repository.
349 * size.c (berkeley_format): Delete.
350 (enum output_format): New enum.
351 (selected_output_format): New variable.
352 (usage): Update to mention GNU format.
353 (main): Update to extract options, and select format as needed.
354 Handle GNU format where needed.
355 (berkeley_sum): Renamed to...
356 (berkeley_or_gnu_sum): ...this, and updated to handle both formats.
357 (berkeley_format): Renamed to...
358 (berkeley_or_gnu_format): ...this, and updated to handle both
360 (print_sizes): Handle GNU format.
361 * doc/binutils.texi (size): Document new GNU format.
362 * testsuite/binutils-all/size.exp: Add test of extended
364 * NEWS: Mention new functionality.
368 * doc/binutils.texi (size): Update example output for Berkeley
373 * README-how-to-make-a-release: Add a note about updating the
374 obsolete targets in the bfd/config.bfd file.
378 * README-how-to-make-a-release: Add more notes on making a release.
383 * readelf.c (process_notes_at): Prevent an illegal memory access
384 when the note's namesize is zero.
385 (decode_tic6x_unwind_bytecode): Add code to handle the case where
386 no registers are specified in a frame pop instruction.
390 * po/bg.po: Updated Bulgarian translation.
394 * po/fr.po: Updated French translation.
395 * po/pt.po: Updated Portuguese translation.
399 * po/uk.po: Updated Ukranian translation.
403 * configure: Regenerate.
404 * binutils/po/binutils.pot.
406 * README-how-to-make-a-release: Update description on how to make
415 * objdump.c (disassemble_section): When disassembling from a
416 symbol only stop at the next symbol if the original symbol was not
417 a function symbol. Otherwise continue disassembling until a new
419 * testsuite/binutils-all/objdump.exp: Add tests of extended
421 * testsuite/binutils-all/disasm.s: New test source file.
426 * readelf.c (get_riscv_section_type_name): New function.
427 (get_section_type_name): Add handler for RISC-V.
428 (riscv_attr_tag_t): Declare.
429 (riscv_attr_tag): New.
430 (display_riscv_attribute): New function.
431 (process_attributes): Add handler for RISC-V.
432 * testsuite/binutils-all/strip-3.d: Remove .riscv.attribute
438 * objdump.c (sanitize_string): New function. Removes control
439 characters from symbol names.
440 (dump_section_header): Use new function.
441 (objdump_print_symname): Likewise.
442 (objdump_print_addr_with_sym): Likewise.
443 (show_line): Likewise.
444 (disassemble_bytes): Likewise.
445 (disassemble_section): Likewise.
446 (load_specific_debug_section): Likewise.
447 (read_section_stabs): Likewise.
448 (print_section_stabs): Likewise.
449 (dump_section): Likewise.
450 (dump_reloc_set): Likewise.
451 (dump_relocs_in_section): Likewise.
452 (dump_bfd): Likewise.
453 (display_any_bfd): Likewise.
458 * readelf.c (process_archive): Use arch.file_name in error
459 messages until the qualified name is available.
463 * configure: Regenerate.
467 * testsuite/binutils-all/cxxfilt.exp: Pass --no-strip-underscores
468 unconditionally to tests needing the option rather than via a
474 * cxxfilt.c (hp_symbol_characters): Delete.
475 (main): Remove depcreated demangling styles.
476 * stabs.c (parse_stab_argtypes): Remove support for old gnu v2
478 * testsuite/binutils-all/cxxfilt.exp: Use the
479 --no-strip-underscore option for targets that do prefix their
480 symbols with underscores.
481 Update tests to eliminate those that use gnu v2 encoding.
486 * testsuite/binutils-all/copy-6.d: New test.
487 * testsuite/binutils-all/objcopy.exp: Use it.
491 * testsuite/lib/binutils-common.exp (run_dump_test): Don't prepend
492 $srcdir/$subdir to source file name if it starts with "./".
496 * readelf.c (get_machine_flags): Add RXv3 output.
501 * objdump.c (load_specific_debug_section): Check for integer
502 overflow before attempting to allocate contents.
507 * objcopy.c (copy_object): Free dhandle after writing out the
509 * objdump.c (dump_bfd): Free dhandle after printing out the debug
515 Update year range in copyright notice of all files.
517 For older changes see ChangeLog-2018
519 Copyright (C) 2019 Free Software Foundation, Inc.
521 Copying and distribution of this file, with or without modification,
522 are permitted in any medium without royalty provided the copyright
523 notice and this notice are preserved.
529 version-control: never