1 2020-04-14 H.J. Lu <hongjiu.lu@intel.com>
4 * readelf.c (nbuckets): New.
8 (ngnubuckets): Likewise.
9 (gnubuckets): Likewise.
10 (gnuchains): Likewise.
12 (ngnuchains): Likewise.
13 (gnusymidx): Likewise.
14 (VALID_SYMBOL_NAME): Likewise.
15 (VALID_DYNAMIC_NAME): Use it.
16 (get_dynamic_data): Moved before process_dynamic_section.
17 (get_num_dynamic_syms): New function.
18 (process_dynamic_section): Use DT_SYMTAB, DT_SYMENT, DT_HASH,
19 DT_GNU_HASH and DT_MIPS_XHASH to reconstruct dynamic symbol
20 table. Use DT_STRTAB and DT_STRSZ to reconstruct dynamic string
22 (get_symbol_index_type): Don't print "bad section index" when
23 there is no section header.
24 (print_dynamic_symbol): Rewrite.
25 (process_symbol_table): Call print_dynamic_symbol to dump dynamic
28 2020-04-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
30 * testsuite/lib/binutils-common.exp (supports_gnu_osabi): Don't
31 enable on *-*-solaris*.
33 2020-03-30 Nick Clifton <nickc@redhat.com>
36 * objcopy.c (copy_object): When copying PE format files set the
37 timestamp field in the pe_data structure if the preserve_dates
39 * testsuite/binutils-all/objcopy.exp (objcopy_test) Use
40 --preserve-dates in place of the -p option, in order to make its
43 2020-03-28 Alan Modra <amodra@gmail.com>
45 * testsuite/binutils-all/objcopy.exp (objcopy_test): Only
46 clear_xfail hppa*-*-*elf*. Revert mips xfails.
48 2020-03-28 Alan Modra <amodra@gmail.com>
50 * testsuite/binutils-all/objcopy.exp (objcopy_test): Move xfails
51 from here to calls. Remove "m8*-*-*" entry. Don't xfail tic54x
52 but do xfail spu, mipstx39 and mips-sgi-irix for the executable
53 test. Pass "-p" to objcopy for the executable test.
55 2020-03-27 Jozef Lawrynowicz <jozef.l@mittosystems.com>
58 * testsuite/binutils-all/objcopy.exp (objcopy_test): Add argument to
59 specify whether an object file or executable should be built and tested.
60 Change test names to report whether an object file or executable is
62 * testsuite/binutils-all/pr25662.ld: New test.
63 * testsuite/binutils-all/pr25662.s: New test.
65 2020-03-27 Alan Modra <amodra@gmail.com>
67 * readelf.c (process_archive): Don't double free qualified_name.
68 Don't break out of loop with "negative" archive_file_size, just
69 set file offset to max.
71 2020-03-25 Alan Modra <amodra@gmail.com>
73 * readelf.c (process_archive): Prevent endless loop.
75 2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
78 * nm.c (print_symname): Replace _bfd_elf_get_symbol_version_name
79 with bfd_get_symbol_version_string.
80 (print_symbo): Pass TRUE to bfd_get_symbol_version_string.
81 * objdump.c (objdump_print_symname): Likewise.
83 2020-03-24 H.J. Lu <hongjiu.lu@intel.com>
86 * nm.c (SYM_NAME): Removed.
87 (print_symname): Add a pointer to struct extended_symbol_info
88 argument. Call _bfd_elf_get_symbol_version_name to get symbol
90 (print_symdef_entry): Pass NULL to print_symname.
91 (print_symbol_info_bsd): Update call to print_symname.
92 (print_symbol_info_sysv): Likewise.
93 (print_symbol_info_posix): Likewise.
95 2020-03-24 Alan Modra <amodra@gmail.com>
97 * readelf.c (process_mips_specific): Free iconf on error path.
99 2020-03-23 Nick Clifton <nickc@redhat.com>
102 * wrstabs.c (stab_pop_type): Replace assertion with error return.
103 * write_stabs_in_sections_debugging_info: Likewise.
104 * stab_enum_type: Likewise.
105 * stab_modify_type: Likewise.
106 * stab_struct_field: Likewise.
107 * stab_end_struct_type: Likewise.
108 * stab_start_class_type: Likewise.
109 * stab_class_static_member: Likewise.
110 * stab_class_baseclass: Likewise.
111 * stab_class_start_method: Likewise.
112 * stab_class_method_var: Likewise.
113 * stab_class_end_method: Likewise.
114 * stab_end_class_type: Likewise.
115 * stab_typedef_type: Likewise.
116 * stab_start_function: Likewise.
117 * stab_end_block: Likewise.
118 * stab_lineno: Likewise.
120 2020-03-20 Nick Clifton <nickc@redhat.com>
122 * readelf.c (get_compression_header): Add ATTRIBUTE_WARN_UNUSED_RESULT.
123 (process_section_headers): Check the return value from
124 get_compression_header.
125 (dump_section_as_strings): Likewise.
126 (dump_section_as_bytes): Likewise.
127 (load_specific_debug_section): Likewise.
129 2020-03-20 H.J. Lu <hongjiu.lu@intel.com>
131 * ar.c (main): Update bfd_plugin_set_program_name call.
132 * nm.c (main): Likewise.
134 2020-03-19 Nick Clifton <nickc@redhat.com>
137 * testsuite/binutils-all/dw4.s: New test source file.
138 * testsuite/binutils-all/nm.exp: Run the new test.
140 2020-03-19 H.J. Lu <hongjiu.lu@intel.com>
142 * readelf.c (process_symbol_table): Use unsigned long for si.
144 2020-03-19 Alan Modra <amodra@gmail.com>
146 * elfcomm.c: Don't include bfd.h or bucomm.h.
147 (program_name): Declare.
148 (process_archive_index_and_symbols): Replace bfd_boolean with int,
149 and substitute FALSE and TRUE.
150 (setup_archive, setup_nested_archive): Likewise.
151 * elfcomm.h: Likewise.
153 2020-03-19 Alan Modra <amodra@gmail.com>
155 * readelf.c (process_archive): Always return via path freeing
158 2020-03-19 Alan Modra <amodra@gmail.com>
160 * readelf.c (process_netbsd_elf_note): Validate descsz before
161 accessing descdata. Formatting.
163 2020-03-19 Alan Modra <amodra@gmail.com>
165 * elfcomm.c (setup_archive): Make file_size an off_t. Comment.
166 * elfcomm.h (setup_archive): Update prototype.
168 2020-03-16 Alan Modra <amodra@gmail.com>
170 * readelf.c (get_symbols): New function.
171 (process_relocs, ia64_process_unwind, hppa_process_unwind),
172 (arm_process_unwind, get_symbol_for_build_attribute): Use it.
174 2020-03-16 Alan Modra <amodra@gmail.com>
176 * unwind-ia64.c (unw_decode_uleb128): Prevent overlarge shifts.
177 Detect shift overflows and check that terminating byte is found.
178 Print an error on a bad uleb128.
180 2020-03-14 Alan Modra <amodra@gmail.com>
182 * readelf.c (process_file): Clean ba_cache.
184 2020-03-14 Alan Modra <amodra@gmail.com>
186 * elfcomm.h (setup_archive): Update prototype.
187 * elfcomm.c (setup_archive): Add file_size parameter and sanity
188 check longnames_size.
189 (setup_nested_archive): Get file size and pass to setup_archive.
190 * elfedit.c (process_archive): Likewise.
191 * readelf.c (process_archive): Pass filedata->file_size to
194 2020-03-14 Alan Modra <amodra@gmail.com>
196 * readelf.c (dump_section_as_strings): Free memory on error exit.
197 (dump_section_as_bytes, process_notes_at): Likewise.
198 (get_build_id): Free enote.
200 2020-03-13 Kamil Rytarowski <n54@gmx.com>
202 * readelf.c (get_netbsd_elfcore_note_type): Add support for
203 NT_NETBSDCORE_LWPSTATUS notes.
205 2020-03-13 Alan Modra <amodra@gmail.com>
207 * elfcomm.c (get_archive_member_name): Always return malloc'd
209 * elfedit.c (process_archive): Tidy memory on all return paths.
210 * readelf.c (process_archive): Likewise.
211 (process_symbol_table): Likewise.
212 (ba_cache): New, replacing ..
213 (get_symbol_for_build_attribute): ..static vars here. Free
214 strtab and symtab before loading new ones. Reject symtab without
215 valid strtab in loop, breaking out of loop on valid symtab.
216 (process_file): Free ba_cache symtab and strtab here, resetting
219 2020-03-12 Alan Modra <amodra@gmail.com>
221 * readelf.c (process_section_headers): Don't just set
222 filedata->section_headers NULL, free it first. Similarly for
223 dynamic_symbols, dynamic_strings, dynamic_syminfo and
224 symtab_shndx_list. Zero associated counts too.
225 (process_object): Free symtab_shndx_list.
226 (process_file): Free various allocated filedata tables.
228 2020-03-11 Nick Clifton <nickc@redhat.com>
232 * dwarf.h (DWARF2_Internal_LineInfo): Add li_address_size and
233 li_segment_size fields.
234 * dwarf.c (read_debug_line_header): Record the address size and
235 segment selector size values (if present) in the lineinfo
237 (display_formatted_table): Warn if the format count is empty but
238 the table itself is not empty.
239 Display the format count and entry count at the start of the table
241 (display_debug_lines_raw): Display the address size and segement
242 selector size fields, if present.
243 * testsuite/binutils-all/dw5.W: Update expected output.
245 2020-03-11 Alan Modra <amodra@gmail.com>
248 * objcopy.c (copy_object): Test "gaps" not gap_fill_set or
249 pad_to_set on second block of code dealing with padding.
250 Replace "c" with "num_sec" and don't recalculate number of
251 sections on second block. Size arrays using sizeof (element)
252 rather than sizeof (element type).
254 2020-03-10 Alan Modra <amodra@gmail.com>
256 * objdump.c (disassemble_section): Don't call qsort unless
257 sym count is at least two.
258 (disassemble_data): Don't call memcpy with NULL src.
260 2020-03-09 Alan Modra <amodra@gmail.com>
263 * readelf.c (dump_ia64_vms_dynamic_fixups): Pass size and nmemb
264 to get_data rather than multiplying.
265 (dump_ia64_vms_dynamic_relocs): Likewise.
266 (process_version_sections): Correct order of size and nmemb args
268 (process_mips_specific): Likewise.
270 2020-03-08 H.J. Lu <hongjiu.lu@intel.com>
272 * readelf.c (get_dynamic_data): Replace "memory chekers" with
273 "memory checkers" in comments.
275 2020-03-06 Simon Marchi <simon.marchi@efficios.com>
278 * doc/Makefile.am: Rename MOSTLYCLEANFILES to MAINTAINERCLEANFILES.
279 * doc/Makefile.in: Re-generate.
281 2020-03-06 Nick Clifton <nickc@redhat.com>
283 * objcopy.c (check_new_section_flags): New function. Reject the
284 SEC_COFF_SHARED flag if the target is not a COFF binary.
285 (copy_object): Call check_new_section_flags.
286 (setup_section): Likewise.
287 * doc/binutils.texi (objcopy): Add a note that the 'share' section
288 flag cannot be applied to ELF binaries.
290 2020-03-06 Alan Modra <amodra@gmail.com>
293 * objcopy.c (filter_symbols): Correct rem_leading_char logic.
295 2020-03-05 Alan Modra <amodra@gmail.com>
298 * objcopy.c (filter_symbols): Don't segfault on NULL
299 prefix_symbols_string.
301 2020-03-04 Christian Eggers <ceggers@gmx.de>
303 * objcopy.c (copy_object): Convert from bytes to octets for
304 --gap-fill and --pad-to.
306 2020-03-03 Nick Clifton <nickc@redhat.com>
309 * prdbg.c (pr_tag_type): Remove call to abort.
311 2020-03-02 Aaron Merey <amerey@redhat.com>
313 * binutils/testsuite/binutils-all/debuginfod.exp: Improve port
316 2020-03-02 Nick Clifton <nickc@redhat.com>
319 * readelf.c (dump_section_as_strings): Display new-line characters
320 as \n and then insert a line break.
321 * testsuite/binutils-all/pr25543.s: New test.
322 * testsuite/binutils-all/pr25543.d: Test driver.
323 * testsuite/binutils-all/readelf.exp: Run the new test.
325 2020-02-27 Nick Clifton <nickc@redhat.com>
328 * readelf.c (process_ia64_vms_dynamic_relocs): Check to see if
329 get_data is unable to load the string table.
331 2020-02-26 Alan Modra <amodra@gmail.com>
333 * elfedit.c: Indent labels correctly.
334 * readelf.c: Likewise.
335 * resres.c: Likewise.
337 2020-02-25 H.J. Lu <hongjiu.lu@intel.com>
340 * ar.c (main): Pass 0 to bfd_plugin_set_program_name.
341 * nm.c (main): Pass 1 to bfd_plugin_set_program_name.
343 2020-02-24 Nick Clifton <nickc@redhat.com>
346 * doc/binutils.texi (objdump): Fix typo in description of
349 2020-02-20 Nelson Chu <nelson.chu@sifive.com>
351 * dwarf.c (regname_internal_riscv): Updated since the DECLARE_CSR
354 2020-02-19 Jordan Rupprecht <rupprecht@google.com>
356 * objdump.c (show_line): call bfd_demangle when using do_demangle.
358 2020-02-19 Andrew Burgess <andrew.burgess@embecosm.com>
360 * configure: Regenerate.
362 2020-02-10 Fangrui Song <maskray@google.com>
364 * objcopy.c (parse_flags): Handle "exclude".
365 * doc/binutils.texi: Document the support.
367 2020-02-10 Aaron Merey <amerey@redhat.com>
369 * binutils/testsuite/binutils-all/debuginfod.exp:
370 Replace set ::env with setenv.
371 Start server before setting environment variable.
372 Specify tmpdir as the location of the server's
374 Check additional server metrics at start-up.
376 2020-02-07 Nick Clifton <nickc@redhat.com>
378 * README-how-to-make-a-release: Add note about updating the
379 GAS/NEWS URL in the next release.
381 2020-02-07 Sergey Belyashov <sergey.belyashov@gmail.com>
384 * readelf.c (get_machine_flags): Add support for Z80N machine
387 2020-02-07 Nick Clifton <nickc@redhat.com>
389 * dwarf.c (display_debug_lines_decoded): Force a NUL termination
390 of the truncated file name.
392 2020-02-06 Andrew Burgess <andrew.burgess@embecosm.com>
394 * objdump.c (print_jump_visualisation): New function.
395 (disassemble_bytes): Call new function.
397 2020-02-06 Alan Modra <amodra@gmail.com>
399 * testsuite/lib/binutils-common.exp (match_target): Accept '!' before
401 (supports_gnu_osabi): New procedure.
402 (is_generic): New, from ld-lib.exp.
403 (supports_gnu_unique): Use the above.
405 2020-02-04 Alan Modra <amodra@gmail.com>
407 * Makefile.am (CFILES): Add od-elf32_avr.c.
408 * Makefile.in: Regenerate.
409 * po/POTFILES.in: Regenerate.
411 2020-02-03 Andreas Schwab <schwab@linux-m68k.org>
413 * readelf.c (dump_relocations, dump_relocations)
414 (decode_arm_unwind_bytecode, process_dynamic_section)
415 (get_symbol_visibility, get_alpha_symbol_other): Add newline to
418 2020-02-03 Sergei Trofimovich <siarheit@google.com>
420 * coffdump.c (program_name): Drop redundant definition.
421 * srconv.c (program_name): Likewise
422 * sysdump.c (program_name): Likewise
424 2020-02-02 H.J. Lu <hongjiu.lu@intel.com>
427 * objdump.c (sym_ok): Return FALSE if 2 sections are in the
428 same file with different section pointers.
430 2020-02-01 Nick Clifton <nickc@redhat.com>
432 * README-how-to-make-a-release: Update with more details on the
433 release making process.
435 2020-01-31 Nick Clifton <nickc@redhat.com>
437 * po/sv.po: Updated Swedish translation.
439 2020-01-28 Nick Clifton <nickc@redhat.com>
441 * readelf.c (get_build_id): Simplify warning message about corrupt
442 notes encountered whilst scanning for the build-id.
444 2020-01-27 Roland McGrath <mcgrathr@google.com>
446 * objcopy.c (compare_gnu_build_notes): Fix comparison results
447 for overlapping ranges so that (A == B) == (B == A) holds.
449 2020-01-27 Alan Modra <amodra@gmail.com>
451 * testsuite/lib/binutils-common.exp (big_or_little_endian): Replace
452 case statement with switch statement.
454 2020-01-24 Nick Clifton <nickc@redhat.com>
456 * readelf.c (get_build_id): Fix warning messages about corrupt
459 2020-01-23 Nick Clifton <nickc@redhat.com>
461 * po/fr.po: Updated French translation.
463 2020-01-22 Yuri Chornoivan <yurchor@mageia.org>
466 * readelf.c (get_alpha_symbol_other): Fix error message typo.
468 2020-01-20 Nick Clifton <nickc@redhat.com>
470 * po/pt.po: Updated Portuguese translation.
471 * po/uk.po: Updated Ukranian translation.
473 2020-01-18 Nick Clifton <nickc@redhat.com>
475 * README-how-to-make-a-release: Update notes on how to cut a
476 branch for a release.
478 2020-01-18 Nick Clifton <nickc@redhat.com>
480 * configure: Regenerate.
481 * po/binutils.pot: Regenerate.
483 2020-01-18 Nick Clifton <nickc@redhat.com>
485 Binutils 2.34 branch created.
487 2020-01-17 Thomas Troeger <tstroege@gmx.de>
489 * objdump.c (jump_info_visualize_address): Discard jumps that are
491 (disassemble_bytes): Only compute the maximum level if jumps were
494 2020-01-13 Nick Clifton <nickc@redhat.com>
496 * objdump.c (disassemble_bytes): Remove C99-ism.
497 * testsuite/binutils-all/debuginfod.exp: New tests.
499 2020-01-13 Thomas Troeger <tstroege@gmx.de>
501 * objdump.c (visualize_jumps, color_output, extended_color_output)
502 (detected_jumps): New variables.
503 (usage): Add the new jump visualization options.
504 (option_values): Add new option value.
505 (long_options): Add the new option.
506 (jump_info_new, jump_info_free): New functions.
507 (jump_info_min_address, jump_info_max_address): Likewise.
508 (jump_info_end_address, jump_info_is_start_address): Likewise.
509 (jump_info_is_end_address, jump_info_size): Likewise.
510 (jump_info_unlink, jump_info_insert): Likewise.
511 (jump_info_add_front, jump_info_move_linked): Likewise.
512 (jump_info_intersect, jump_info_merge): Likewise.
513 (jump_info_sort, jump_info_visualize_address): Likewise.
514 (disassemble_jumps): New function - used to locate jumps.
515 (disassemble_bytes): Add ascii art generation.
516 (disassemble_section): Add scan to locate jumps.
517 (main): Parse the new visualization option.
518 * doc/binutils.texi: Document the new feature.
519 * NEWS: Mention the new feature.
521 2020-01-13 Alan Modra <amodra@gmail.com>
525 * dwarf.c (display_debug_frames): Move fde_fc earlier. Free
526 fde_fc col_type and col_offset.
527 * readelf.c (apply_relocations): Move symsec check earlier.
528 (free_debug_section): Free reloc_info.
529 (process_notes_at): Free pnotes on error path.
530 (process_object): Free dump_sects here..
531 (process_archive): ..not here.
533 2020-01-13 Alan Modra <amodra@gmail.com>
536 * nm.c (display_rel_file): Free dyn_syms.
538 2020-01-09 Nick Clifton <nickc@redhat.com>
541 * objcopy.c (empty_name): New variable.
542 (need_sym_before): Prevent an attempt to free a static variable.
543 (filter_symbols): Avoid strcmp test by checking for pointer
546 2020-01-09 Nick Clifton <nickc@redhat.com>
548 * po/zh_TW.po: Updated Traditional Chinese translation.
550 2020-01-09 Aaron Merey <amerey@redhat.com>
552 * Makefile.am (readelf_LDADD, objdump_LDADD): Add libdebuginfod.
553 * Makefile.in: Regenerate.
555 * config.in: Regenerate.
556 * configure: Regenerate.
557 * configure.ac: Call AC_DEBUGINFOD.
558 * doc/Makefile.in: Regenerate.
559 * doc/binutils.texi: Add section on using binutils
561 * dwarf.c (debuginfod_fetch_separate_debug_info): New function.
562 Query debuginfod servers for the target debug file.
563 (load_separate_debug_info): Call
564 debuginfod_fetch_separate_debug_info if configured with
566 (load_separate_debug_files): Add file argument to
567 load_separate_debug_info calls.
568 * dwarf.h (get_build_id): Add declaration.
569 * objdump.c (get_build_id): New function. Get build-id of file.
570 * readelf.c (get_build_id): Likewise.
571 * testsuite/binutils-all/debuginfod.exp: New tests.
572 * testsuite/binutils-all/linkdebug.s: Add .note.gnu.build-id
575 2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com>
577 * readelf.c: Add support for new Z*) relocations and machine
580 2020-01-01 Alan Modra <amodra@gmail.com>
582 Update year range in copyright notice of all files.
584 For older changes see ChangeLog-2019
586 Copyright (C) 2020 Free Software Foundation, Inc.
588 Copying and distribution of this file, with or without modification,
589 are permitted in any medium without royalty provided the copyright
590 notice and this notice are preserved.
596 version-control: never