1 2017-11-26 H.J. Lu <hongjiu.lu@intel.com>
3 * dwarf.c (load_separate_debug_info): Rename argument name from
6 2017-11-24 H.J. Lu <hongjiu.lu@intel.com>
9 * readelf.c (process_notes_at): Use ELF_NOTE_DESC_OFFSET to get
10 the offset of the note descriptor. Use ELF_NOTE_NEXT_OFFSET to
11 get the offset of the next note entry.
13 2017-11-23 Pavel I. Kryukov <kryukov@frtk.ru>
16 * readelf.c (process_archive): Use memset to initiaise
17 thin_filedata structure.
19 2017-11-21 H.J. Lu <hongjiu.lu@intel.com>
22 * testsuite/binutils-all/x86-64/objects.exp: New file.
23 * testsuite/binutils-all/x86-64/pr22451.o.bz2: Likewise.
25 2017-11-21 Claudiu Zissulescu <claziss@synopsys.com>
27 * testsuite/binutils-all/arc/objdump.exp: Update pattern matching
30 2017-11-21 Nick Clifton <nickc@redhat.com>
32 * dwarf.c (dwo_name, dwo_dir, dwo_id, dwo_id_len): New variables.
33 (read_and_display_attr_value): Record dwo variables if requested.
34 (display_augmentation_data): Rename to display_data and make
36 (load_dwo_file): New function. Loads a separate dwarf object
38 (load_separate_debug_file): Add reporting and loading of separate
40 * readelf.c (process_section_headers): Add do_debug_links to list
41 of flags requiring a debug dump.
42 (display_debug_section): Tidy up code.
43 * doc/debug.options.texi: Add note that dwo links will also be
45 * testsuite/binutils-all/debuglink.s: Tidy code.
46 * testsuite/binutils-all/dwo.s: New test file.
47 * testsuite/binutils-all/readelf.wk2: New file - expected output
49 * testsuite/binutils-all/readelf.exp: Run the new test.
51 2017-11-18 Alan Modra <amodra@gmail.com>
54 * nm.c (sort_symbols_by_size): Don't attempt to access
55 section symbol internal_elf_sym.
56 (print_symbol): Likewise. Don't call bfd_get_symbol_version_string
58 * objdump.c (compare_symbols): Don't attempt to access
59 section symbol internal_elf_sym.
60 (objdump_print_symname): Don't call bfd_get_symbol_version_string
63 2017-11-17 Jim Wilson <jimw@sifive.com>
65 * readelf.c (elf/riscv.h): Alphabetize include.
66 (is_32bit_inplace_add_reloc, is_32bit_inplace_sub_reloc)
67 (is_64bit_inplace_add_reloc, is_64bit_inplace_sub_reloc)
68 (is_16bit_inplace_add_reloc, is_16bit_inplace_sub_reloc)
69 (is_8bit_inplace_add_reloc, is_8bit_inplace_sub_reloc): New.
70 (apply_relocations): New locals reloc_inplace and reloc_subtract.
71 Call the new functions and set the new locals. Call byte_get if
72 reloc_inplace. Subtract sym->st_value if reloc_subtract.
74 2017-11-17 Nick Clifton <nickc@redhat.com>
77 * ar.c (write_archive): Free the temporary file name.
79 2017-11-17 Nick Clifton <nickc@redhat.com>
81 * readelf.c (process_archive): Include member name in the
82 file_name of the filedata structure.
84 2017-11-15 Alan Modra <amodra@gmail.com>
87 * objcopy.c (copy_main): Free tmpname.
89 2017-11-15 Nick Clifton <nickc@redhat.com>
92 * dwarf.h (enum dwarf_section_display_enum): Add gnu_debuglink,
93 gnu_debugaltlink and separate_debug_str.
94 (struct dwarf_section): Add filename field.
95 Add prototypes for load_separate_debug_file, close_debug_file and
97 * dwarf.c (do_debug_links): New.
98 (do_follow_links): New.
99 (separate_debug_file, separate_debug_filename): New.
100 (fetch_alt_indirect_string): New function. Retrieves a string
101 from the debug string table in the separate debug info file.
102 (read_and_display_attr_value): Use it with DW_FORM_GNU_strp_alt.
103 (load_debug_section_with_follow): New function. Like
104 load_debug_section, but if the first attempt fails, then tries
105 again in the separate debug info file.
106 (introduce): New function.
107 (process_debug_info): Use load_debug_section_with_follow and
109 (load_debug_info): Likewise.
110 (display_debug_lines_raw): Likewise.
111 (display_debug_lines_decoded): Likewise.
112 (display_debug_macinfo): Likewise.
113 (display_debug_macro): Likewise.
114 (display_debug_abbrev): Likewise.
115 (display_debug_loc): Likewise.
116 (display_debug_str): Likewise.
117 (display_debug_aranges): Likewise.
118 (display_debug_addr); Likewise.
119 (display_debug_frames): Likewise.
120 (display_gdb_index): Likewise.
121 (process_cu_tu_index): Likewise.
122 (load_cu_tu_indexes): Likewise.
123 (display_debug_links): New function. Displays the contents of a
124 .gnu_debuglink or .gnu_debugaltlink section.
125 (calc_gnu_debuglink_ctc32):New function. Calculates a CRC32
127 (check_gnu_debuglink): New function. Checks the CRC of a
128 potential separate debug info file.
129 (parse_gnu_debuglink): New function. Reads a CRC value out of a
130 .gnu_debuglink section.
131 (check_gnu_debugaltlink): New function.
132 (parse_gnu_debugaltlink): New function. Reads the build-id value
133 out of a .gnu_debugaltlink section.
134 (load_separate_debug_info): New function. Finds and loads a
135 separate debug info file.
136 (load_separate_debug_file): New function. Attempts to find and
137 follow a link to a separate debug info file.
138 (free_debug_memory): Free the separate debug info file
140 (opts_table): Add "follow-links" and "links".
141 (dwarf_select_sections_by_letters): Add "k" and "K".
142 (debug_displays): Reformat. Add .gnu-debuglink and
144 Add an extra entry for .debug_str in a separate debug info file.
145 * doc/binutils.texi: Move description of debug dump features
146 common to both readelf and objdump into...
147 * objdump.c (usage): Add -Wk and -WK.
148 (load_specific_debug_section): Initialise the filename field in
149 the dwarf_section structure.
150 (close_debug_file): New function.
151 (open_debug_file): New function.
152 (dump_dwarf): Load and dump the separate debug info sections.
153 * readelf.c (struct filedata): New structure. Contains various
154 variables that used to be global:
155 (current_file_size, string_table, string_table_length, elf_header)
156 (section_headers, program_headers, dump_sects, num_dump_sects):
157 Move into filedata structure.
158 (cmdline): New global variable. Contains list of sections to dump
159 by number, as specified on the command line.
160 Add filedata parameter to most functions.
161 (load_debug_section): Load the string table if it has not already
163 (close_file): New function.
164 (close_debug_file): New function.
165 (open_file): New function.
166 (open_debug_file): New function.
167 (process_object): Process sections in any separate debug info files.
168 * doc/debug.options.texi: New file. Add description of =links and
169 =follow-links options.
170 * NEWS: Mention the new feature.
171 * elfcomm.c: Have the byte get functions take a const pointer.
172 * elfcomm.h: Update prototypes.
173 * testsuite/binutils-all/dw5.W: Update expected output.
174 * testsuite/binutils-all/objdump.WL: Update expected output.
175 * testsuite/binutils-all/objdump.exp: Add test of -WK and -Wk.
176 * testsuite/binutils-all/readelf.exp: Add test of -wK and -wk.
177 * testsuite/binutils-all/readelf.k: New file.
178 * testsuite/binutils-all/objdump.Wk: New file.
179 * testsuite/binutils-all/objdump.WK2: New file.
180 * testsuite/binutils-all/linkdebug.s: New file.
181 * testsuite/binutils-all/debuglink.s: New file.
183 2017-11-10 Jim Wilson <jimw@sifive.com>
185 * testsuite/binutils-all/objdump.exp: Expect the debug_ranges test to
188 2017-11-07 Jim Wilson <jimw@sifive.com>
190 * MAINTAINERS (RISC-V): Fix typo in my email address.
192 2017-11-07 Palmer Dabbelt <palmer@sifive.com>
194 * MAINTAINERS (RISC-V): Add Jim Wilson as a maintainer.
195 Clean up Andrew's entry (remove trailing space, add tabs).
196 Change Palmer's email address, and clean up entry (add tabs).
198 2017-11-07 Alan Modra <amodra@gmail.com>
200 * dwarf.c (read_uleb128): Properly pluralize messages.
201 (display_debug_lines_raw, display_debug_loc): Likewise.
202 (display_debug_names, process_cu_tu_index): Likewise.
203 * od-macho.c (dump_code_signature_superblob): Likewise.
204 * readelf.c (process_program_headers): Likewise.
205 (process_section_header, process_relocs): Likewise.
206 (hppa_process_unwind, arm_process_unwind): Likewise.
207 (process_dynamic_section, process_version_sections): Likewise.
208 (process_symbol_table, process_syminfo): Likewise.
209 (apply_relocations, process_mips_specific): Likewise.
210 (process_gnu_liblist, process_notes_at): Likewise.
211 (process_archive): Likewise.
212 * testsuite/binutils-all/dw2-1.W,
213 * testsuite/binutils-all/dw2-3.W,
214 * testsuite/binutils-all/dw2-3gabi.W,
215 * testsuite/binutils-all/dw5.S,
216 * testsuite/binutils-all/dw5.W,
217 * testsuite/binutils-all/i386/compressed-1a.d,
218 * testsuite/binutils-all/libdw2-compressedgabi.out,
219 * testsuite/binutils-all/objdump.W,
220 * testsuite/binutils-all/readelf.r,
221 * testsuite/binutils-all/readelf.r-64,
222 * testsuite/binutils-all/x86-64/compressed-1a.d: Update
223 for pluralization fixes.
225 2017-11-07 Alan Modra <amodra@gmail.com>
227 * sysdep.h (textdomain, bindtextdomain): Use safer "do nothing".
228 (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS.
230 2017-11-03 Claudiu Zissulescu <claziss@synopsys.com>
232 * doc/binutils.texi (ARC): Update disassembler options.
233 * testsuite/binutils-all/arc/hexprint.s: New file.
234 * testsuite/binutils-all/arc/objdump.exp: Test hex printing
237 2017-11-03 Mingi Cho <mgcho.minic@gmail.com>
238 Nick Clifton <nickc@redhat.com>
241 * dwarf.c (read_cie): Use bfd_size_type for
242 augmentation_data_len.
243 (display_augmentation_data): New function.
244 (display_debug_frames): Use it.
245 Check for integer overflow when testing augmentation_data_len.
247 2017-11-02 Mingi Cho <mgcho.minic@gmail.com>
250 * readelf.c (print_gnu_property_note): Improve overflow checks so
251 that they will work on a 32-bit host.
253 2017-11-01 James Bowman <james.bowman@ftdichip.com>
255 * readelf.c (is_16bit_abs_reloc): Add entry for FT32.
257 2017-10-31 Nick Clifton <nickc@redhat.com>
259 * readelf.c (process_relocs): Tell users if no static relocs were
260 found, but if they had added --use-dynamic to the command line
261 then relocs would have been displayed.
263 2017-10-28 Alan Modra <amodra@gmail.com>
266 * readelf.c (process_archive_index_and_symbols): Ensure ar_size
267 field is zero terminated for strtoul.
268 (setup_archive, get_archive_member_name): Likewise.
270 2017-10-27 Simon Marchi <simon.marchi@ericsson.com>
272 * dwarf.c (struct Frame_Chunk) <cfa_reg>: Change type to
274 (display_debug_frames): Read CFA reg as an unsigned number.
276 2017-10-25 Alan Modra <amodra@gmail.com>
278 * nm.c (filter_symbols): Match "__gnu_lto_slim" optionally prefixed
281 2017-10-18 Eric Botcazou <ebotcazou@adacore.com>
283 * MAINTAINERS: Add myself as Visium maintainer.
285 2017-10-18 Nick Clifton <nickc@redhat.com>
287 * README-how-to-make-a-release: A note about checking file and
288 directory permissions.
290 * MAINTAINERS: Move Svein Seldal to Past Maintainers section.
292 2017-10-18 Alan Modra <amodra@gmail.com>
295 * readelf.c (print_core_note): Ensure "count" sanity check
296 calculation doesn't overflow.
297 (process_notes_at): Perform note namesz and descsz checks
298 using unsigned comparisons against data remaining. Catch
299 alignment overflow of namesz and descsz too. Don't allocate a
300 temp for terminating "name" when there is space available
303 2017-10-17 Tom Tromey <tom@tromey.com>
305 * MAINTAINERS: Add myself as dwarf-mode.el maintainer.
307 2017-10-11 Peeter Joot <peeter.joot@lzlabs.com>
308 Nick Clifton <nickc@redhat.com>
310 * dwarf.c (read_and_display_attr_value): Handle DW_AT_endianity,
311 DW_END_default, DW_END_big, DW_END_little, DW_ATE_UCS,
312 DW_ATE_ASCII, DW_CC_pass_by_reference, DW_CC_pass_by_value,
313 DW_CC_GNU_renesas_sh, DW_CC_GNU_borland_fastcall_i386,
314 DW_AT_decimal_sign, DW_AT_defaulted, DW_AT_discr_list.
315 (get_TAG_name): Report user generated tag values.
316 * testsuite/binutils-all/dwarf-attributes.S: New test.
317 * testsuite/binutils-all/dwarf-attributes.W. Expected output from
319 * testsuite/binutils-all/readelf.exp: Run the new test.
321 2017-10-10 Tom Tromey <tom@tromey.com>
323 * dwarf-mode.el: Bump to version 1.4.
325 2017-10-10 Tom Tromey <tom@tromey.com>
327 * dwarf-mode.el (dwarf--process, dwarf--deletion-region): New
329 (dwarf--check-running, dwarf--sentinel, dwarf--invoke)
330 (dwarf--filter): New functions.
331 (dwarf-do-insert-substructure, dwarf-do-refresh): Call
332 dwarf--check-running, dwarf--invoke.
333 (dwarf-browse): Initialize new variables.
335 2017-10-10 Tom Tromey <tom@tromey.com>
337 * dwarf-mode.el: Set lexical-binding.
339 2017-10-10 Tom Tromey <tom@tromey.com>
341 * dwarf-mode.el (dwarf-mode-map): New defvar.
343 2017-10-10 Tom Tromey <tromey@sourceware.org>
346 * dwarf.c (process_debug_info): Skip any comp unit that ends
347 before dwarf_start_die.
349 2017-10-06 Alan Modra <amodra@gmail.com>
351 * dwarf.c (process_debug_info): Consolidate header length checks.
352 (display_debug_pubnames_worker): Use "start" to read header.
353 Properly check header length and report errors earlier.
354 Simplify loop printing pubnames.
355 (get_line_filename_and_dirname): Catch small negative "length"
357 (display_debug_aranges): Likewise. Report header errors
358 earlier using standardized message.
359 (display_debug_names): Likewise.
361 2017-10-05 Joseph Myers <joseph@codesourcery.com>
363 * readelf.c (decode_arm_unwind): Initialize res to TRUE.
365 2017-10-05 Nick Clifton <nickc@redhat.com>
368 * objcopy.c (strip_main): Add 'M' character to short options list
369 when calling getopt_long.
371 2017-10-05 Nick Clifton <nickc@redhat.com>
374 * readelf.c (dump_relocations): Do not truncate reloc names when
375 displaying output in wide mode.
377 2017-10-05 Nick Clifton <nickc@redhat.com>
379 * README-how-to-make-a-release: Merge steps 3, 4 and 5, and insert
380 the git tag operation at the correct location.
382 2017-10-05 Alan Modra <amodra@gmail.com>
385 * dwarf.c (read_cie): Don't compare "start" and "end" pointers
386 after adding a possibly wild length to "start", compare the length
387 to the difference of the pointers instead. Remove now redundant
388 "negative" length test.
390 2017-10-05 Tristan Gingold <tgingold@free.fr>
392 * MAINTAINERS: Update email address. Redirect release maintainer
393 to global maitainers.
395 2017-10-01 Alan Modra <amodra@gmail.com>
399 * objdump.c (load_specific_debug_section): Introduce a temp to
400 stop bfd_get_full_section_contents NULLing out section->start.
402 2017-10-01 Alan Modra <amodra@gmail.com>
405 * objdump.c (load_specific_debug_section): Allocate an extra byte
406 for a terminating NUL.
408 2017-09-30 Alan Modra <amodra@gmail.com>
411 * objdump.c: Formatting.
412 (show_line): Reset prev_line when function name changes.
414 2017-09-27 Nick Clifton <nickc@redhat.com>
417 * dwarf.c (process_debug_info): Add a check for a negative
420 2017-09-27 Alan Modra <amodra@gmail.com>
423 * readelf.c (process_symbol_table): Check that DT_HASH symbol
424 chains are only visited once, and report an error if not. Display
425 invalid symbol index if chain is out of range. Use the same logic
426 when calculating histograms rather than the PR 17531 fix. Delete
427 bogus check that chained index is less than number of buckets.
429 2017-09-26 Nick Clifton <nickc@redhat.com>
432 * dwarf.c (get_line_filename_and_dirname): Add extra checks for
435 2017-09-26 Nick Clifton <nickc@redhat.com>
437 * README-how-to-make-a-release: New file.
439 2017-09-26 Alan Modra <amodra@gmail.com>
442 * dwarf.c (READ_ULEB): Don't use DWARF_VMA_FMT in translated string.
443 (READ_SLEB): Likewise.
444 * readelf.c (bfd_vmatoa): New function.
445 (get_data, get_dynamic_data): Use it for printing error messages.
447 2017-09-25 H.J. Lu <hongjiu.lu@intel.com>
450 * nm.c (display_rel_file): Free memory returned from
451 bfd_get_synthetic_symtab.
453 2017-09-22 Alexandre Oliva <aoliva@redhat.com>
455 * dwarf.h (debug_info): Add loc_views and num_loc_views.
456 * dwarf.c (vm1): New constant.
457 (print_dwarf_view): New function.
458 (read_and_display_attr_value): Support DW_AT_GNU_locviews.
459 (process_debug_info): Keep num_loc_offsets and num_loc_views
461 (display_view_pair_list): New function.
462 (display_loc_list_dwo): Take vstart_ptr; update it. Dump
463 location view pairs before the range they apply to, when a
464 viewlist augments the loc list.
465 (display_loc_list): Likewise. Check view numbers in range
467 (display_loclists_list): Likewise. Handle view pair entries,
468 and warn on trailing ones.
469 (loc_views): New variable.
470 (loc_offsets_compar): Compare loc_views if loc_offsets are the
472 (display_debug_loc): Check and sort loc_views too. Accept
473 loc_view as expected_start. Skip if lists and views are the
474 same. Dump locview list separately in order, and pass the
475 locview list base to each list dump function. Warn and skip
476 overlap and hole checking if we find loclists and locviews to
478 * testsuite/binutils-all/locview-1.s: New.
479 * testsuite/binutils-all/readelf.locview-1: New.
480 * testsuite/binutils-all/locview-2.s: New.
481 * testsuite/binutils-all/readelf.locview-2: New.
482 * testsuite/binutils-all/readelf.exp: Run new tests. Fix
483 option spelling in pr18374 fail message. XFAIL dw5 test on
486 2017-09-22 Alan Modra <amodra@gmail.com>
488 * testsuite/binutils-all/readelf.exp: Don't perror and exit on
489 bintest.s assembly failure. Report tests unresolved instead.
490 Likewise for version note test, pr18374, decompress, and dw5
492 (readelf_test): Set testname to include both option and binary
493 file name. Use for pass/fail.
495 2017-09-21 Maciej W. Rozycki <macro@imgtec.com>
497 * readelf.c (get_machine_flags) <E_MIPS_MACH_5900>: New case.
499 2017-09-05 Nick Clifton <nickc@redhat.com>
502 * readelf.c (process_mips_specific): Add checks for a NULL data
505 2017-09-05 Alexander Fedotov <alexander.fedotov@nxp.com>
506 Edmar Wienskoski <edmar.wienskoski@nxp.com
508 * readelf.c (get_elf_section_flags): Add VLE.
509 (process_section_headers): Add VLE key to details.
511 2017-08-25 Alan Modra <amodra@gmail.com>
514 * readelf.c (process_version_sections <SHT_GNU_verdef>): Check
515 vd_aux and vda_next for sanity. Delete "end". Correct overflow
517 (process_version_sections <SHT_GNU_verneed>): Correct overflow
518 check. Don't report invalid vna_next on overflow. Do report
519 invalid vna_next on size less than aux info.
521 2017-08-23 Alan Modra <amodra@gmail.com>
524 * readelf.c (process_version_sections <SHT_GNU_verneed>): Check
525 for invalid vn_next field before adding to idx. Use unsigned
526 long for index vars. Move index checks.
527 <SHT_GNU_verdef>: Likewise for vd_next.
529 2017-08-17 Nick Clifton <nickc@redhat.com>
531 * testsuite/binutils-all/note-3-64.s: New test. Checks assembly
532 and decoding of version2 GNU build attribute notes.
533 * testsuite/binutils-all/note-3-32.s: New test. 32-bit version of
535 * testsuite/binutils-all/note-3-64.d: New test driver.
536 * testsuite/binutils-all/note-3-32.d: New test driver.
537 * testsuite/binutils-all/objcopy.exp: Run the new test.
538 * readelf.c (is_64bit_abs_reloc): Add R_SPARC_64.
540 2017-08-14 Gustavo Romero <gromero@linux.vnet.ibm.com>
542 * readelf.c (get_note_type): Handle PPC note types available
545 2017-08-12 Alan Modra <amodra@gmail.com>
547 * readelf.c (process_note): Qualify NT_GNU_BUILD_ATTRIBUTE notes
550 2017-08-08 Nick Clifton <nickc@redhat.com>
553 * prdbg.c (pr_int_type): Increase size of local string buffer.
554 (pr_float_type): Likewise.
555 (pr_bool_type): Likewise.
557 2017-08-02 Nick Clifton <nickc@redhat.com>
560 * arsup.c (ar_addmod): Add plugin support for the MRI ADDMOD
563 2017-08-02 Nick Clifton <nickc@redhat.com>
565 * testsuite/binutils-all/objdump.exp (cpus_expected): Add am33-2.
567 2017-08-02 Alan Modra <amodra@gmail.com>
569 * readelf.c (is_32bit_abs_reloc): Add R_IA64_SECREL32MSB and
571 (is_64bit_abs_reloc): Add R_IA64_DIR64MSB.
572 (is_64bit_pcrel_reloc): Add R_IA64_PCREL64MSB.
574 2017-08-01 Nick Clifton <nickc@redhat.com>
576 * po/sv.po: Updated Swedish translation.
578 2017-07-31 Marty Plummer <ntzrmtthihu777@gmail.com>
581 * winduni.c (codepages): Use cp1252 for codepage 0.
583 2017-07-25 Nick Clifton <nickc@redhat.com>
586 * readelf.c (dump_section_as_strings): Do not fail if the section
588 (dump_section_as_bytes): Likewise.
590 2017-07-24 Nick Clifton <nickc@redhat.com>
593 * rddbg.c (read_symbol_stabs_debugging_info): Check for an empty
594 string whilst concatenating symbol names.
596 2017-07-21 Nick Clifton <nickc@redhat.com>
598 * po/fr.po: Updated French translation.
600 2017-07-21 Simon Marchi <simon.marchi@ericsson.com>
602 * dwarf.c (last_pointer_size, warned_about_missing_comp_units):
604 (load_debug_info): Remove assignments to those two variables.
606 2017-07-21 Alexandre Oliva <aoliva@redhat.com>
608 * dwarf.c (struct State_Machine_Registers): Add view field.
609 (reset_state_machine): Reset view.
610 (process_extended_line_op): Reset view when appropriate.
611 (display_debug_lines_raw): Increment or reset view when appropriate.
612 Print nonzero views. Support print view resets, disabled by default.
613 (display_debug_lines_decoded): Likewise. Disambiguate op_code tests,
614 enabling printing of end_sequence.
615 * testsuite/binutils-all/dw2-1.W: Add nonzero views.
616 * testsuite/binutils-all/dw2-3.W: Likewise.
617 * testsuite/binutils-all/dw2-3gabi.W: Likewise.
618 * testsuite/binutils-all/dw5.W: Add end sequence lines.
619 * testsuite/binutils-all/i386/compressed-1a.d: Add nonzero views.
620 * testsuite/binutils-all/libdw2-compressedgabi.out: Likewise.
621 * testsuite/binutils-all/objdump.W: Likewise.
622 * testsuite/binutils-all/objdump.WL: Add end sequence lines.
623 * testsuite/binutils-all/x86-64/compressed-1a.d: Add nonzero views.
625 2017-07-19 Tristan Gingold <gingold@adacore.com>
627 * nm.c (show_stats): Remove variable.
628 (long_options): Remove --stats option.
629 (main): Remove handling of --stats.
631 2017-07-18 Nick Clifton <nickc@redhat.com>
634 * coffgrok.c: Fix spelling typos.
635 * readelf.c: Likewise.
637 * testsuite/binutils-all/objcopy.exp: Likewise.
639 2017-07-18 Nick Clifton <nickc@redhat.com>
641 * po/sv.po: Updated Swedish translation.
643 2017-07-18 Hans-Peter Nilsson <hp@bitrange.com>
645 * dwarf.c (display_debug_names): Initialize hash_prev.
647 2017-07-17 Nick Clifton <nickc@redhat.com>
650 * ar.c (main): Skip check for no files on the command line when
653 2017-07-13 H.J. Lu <hongjiu.lu@intel.com>
655 * testsuite/binutils-all/objdump.exp: Always delete $testarchive
658 2017-07-12 Alan Modra <amodra@gmail.com>
660 * po/bg.po: Update from translationproject.org/latest/binutils/.
661 * po/ca.po: Likewise.
662 * po/da.po: Likewise.
663 * po/es.po: Likewise.
664 * po/fi.po: Likewise.
665 * po/fr.po: Likewise.
666 * po/hr.po: Likewise.
667 * po/id.po: Likewise.
668 * po/it.po: Likewise.
669 * po/ja.po: Likewise.
670 * po/ro.po: Likewise.
671 * po/ru.po: Likewise.
672 * po/sk.po: Likewise.
673 * po/sr.po: Likewise.
674 * po/sv.po: Likewise.
675 * po/tr.po: Likewise.
676 * po/uk.po: Likewise.
677 * po/vi.po: Likewise.
678 * po/zh_CN.po: Likewise.
679 * po/zh_TW.po: Likewise.
681 2017-07-12 Nick Clifton <nickc@redhat.com>
683 Fix compile time warnings using gcc 7.1.1.
684 * dwarf.c (dwarf_vmatoa_1): Do not pass a NULL string pointer to
686 * srconv.c (walk_tree_type): Initialise the spare field of the
689 2017-07-11 Andreas Schwab <schwab@suse.de>
691 * readelf.c (process_note): Print newline after description data
693 (print_core_note): Print newline if nothing was printed in wide
696 2017-07-09 Rafael Fontenelle <rafaelff@gnome.org>
698 * dwarf.c (display_formatted_table): Fix error message typo.
700 2017-07-07 John Baldwin <jhb@FreeBSD.org>
702 * readelf.c (get_freebsd_elfcore_note_type): Handle
703 NT_FREEBSD_PTLWPINFO.
705 2017-07-05 H.J. Lu <hongjiu.lu@intel.com>
707 * dwarf.c (display_debug_names): Replace index with xindex.
709 2017-07-04 Tristan Gingold <gingold@adacore.com>
711 * configure: Regenerate.
713 2017-07-04 Tristan Gingold <gingold@adacore.com>
715 * NEWS: Add marker for 2.29.
717 2017-07-03 Tristan Gingold <gingold@adacore.com>
719 * po/binutils.pot: Regenerate.
721 2017-07-03 Alan Modra <amodra@gmail.com>
723 * strings.c (filename_and_size_t): Delete.
724 (strings_a_section): Don't check section size against file size.
725 Use bdf_malloc_and_get_section. Report an error on failures.
726 Replace arg param with filename and got_a_section param.
727 (got_a_section): Move to..
728 (strings_object_file): ..an auto var here. Iterate over sections
729 rather than calling bfd_map_over_sections. Adjust strings_a_section
732 2017-07-02 Jan Kratochvil <jan.kratochvil@redhat.com>
734 * dwarf.c: Include assert.h.
735 (MAX, MIN, get_IDX_name, display_debug_names): New.
736 (debug_displays): Add .debug_names.
737 * dwarf.h: (enum dwarf_section_display_enum): Add debug_names.
738 * readelf.c (process_section_headers): Add ".debug_names".
740 2017-07-01 Alan Modra <amodra@gmail.com>
743 * objdump.c (strtab): Make var a bfd_byte*.
744 (disassemble_section): Don't limit malloc size. Instead, use
745 bfd_malloc_and_get_section.
746 (read_section_stabs): Use bfd_malloc_and_get_section. Return
748 (find_stabs_section): Remove now unnecessary cast.
749 * objcopy.c (copy_object): Use bfd_malloc_and_get_section. Free
750 contents on error return.
751 * nlmconv.c (copy_sections): Use bfd_malloc_and_get_section.
753 2017-06-30 Nick Clifton <nickc@redhat.com>
756 * objdump.c (disassemble_section): Move check for an overlarge
757 section to just before the allocation of memory. Do not check
758 section size against file size, but instead use an arbitrary 2Gb
759 limit. Issue a warning message if the section is too big.
761 2017-06-30 Maciej W. Rozycki <macro@imgtec.com>
763 * NEWS: Mention microMIPS XPA support.
765 2017-06-30 Maciej W. Rozycki <macro@imgtec.com>
767 * NEWS: Mention microMIPS Release 5 ISA support.
769 2017-06-30 Maciej W. Rozycki <macro@imgtec.com>
771 * testsuite/binutils-all/mips/mips-xpa-virt-1.d: New test.
772 * testsuite/binutils-all/mips/mips-xpa-virt-2.d: New test.
773 * testsuite/binutils-all/mips/mips-xpa-virt-3.d: New test.
774 * testsuite/binutils-all/mips/mips-xpa-virt-4.d: New test.
775 * testsuite/binutils-all/mips/mips-xpa-virt.s: New test source.
776 * testsuite/binutils-all/mips/mips.exp: Run the new tests.
778 2017-06-29 Anton Kolesov <Anton.Kolesov@synopsys.com>
780 * testsuite/binutils-all/arc/double_store.s: New file.
781 * testsuite/binutils-all/arc/objdump.exp: Tests for disassembler
783 (do_objfile): New function.
784 (check_assembly): Likewise.
786 2017-06-29 Andreas Arnez <arnez@linux.vnet.ibm.com>
788 * readelf.c (get_note_type): Add NT_S390_GS_CB and NT_S390_GS_BC.
790 2017-06-28 H.J. Lu <hongjiu.lu@intel.com>
792 * objdump.c (dump_relocs_in_section): Cast to ufile_ptr when
793 comparing against bfd_get_file_size return.
795 2017-06-28 Nick Clifton <nickc@redhat.com>
797 * objcopy.c (merge_gnu_build_notes): Add support for version 2 notes.
798 * readelf.c (print_gnu_build_attribute_name): Likewise.
800 2017-06-28 Maciej W. Rozycki <macro@imgtec.com>
801 Matthew Fortune <matthew.fortune@imgtec.com>
803 * readelf.c (get_machine_flags) <E_MIPS_MACH_IAMR2>: New case.
804 (print_mips_isa_ext) <AFL_EXT_INTERAPTIV_MR2>: Likewise.
805 * NEWS: Mention Imagination interAptiv MR2 processor support.
807 2017-06-26 Nick Clifton <nickc@redhat.com>
810 * objdump.c (disassemble_section): Skip any section that is bigger
811 than the entire file.
813 2017-06-26 Nick Clifton <nickc@redhat.com>
816 * bucomm.c (get_file_size): Explicitly warn if the file is a
819 2017-06-24 Thomas Preud'homme <thomas.preudhomme@arm.com>
821 * readelf.c (arm_attr_tag_CPU_arch): Fill value for ARMv8-R.
823 2017-06-23 Nick Clifton <nickc@redhat.com>
826 * strings.c (strings_file): Warn about attempts to run strings on
829 2017-06-22 H.J. Lu <hongjiu.lu@intel.com>
831 * readelf.c (decode_x86_feature): Decode
832 GNU_PROPERTY_X86_FEATURE_1_SHSTK.
833 * testsuite/binutils-all/i386/shstk.d: New file.
834 * testsuite/binutils-all/i386/shstk.s: Likewise.
835 * testsuite/binutils-all/x86-64/shstk-x32.d: Likewise.
836 * testsuite/binutils-all/x86-64/shstk.d: Likewise.
837 * testsuite/binutils-all/x86-64/shstk.s: Likewise.
839 2017-06-22 H.J. Lu <hongjiu.lu@intel.com>
841 * readelf.c (decode_x86_feature): New.
842 (print_gnu_property_note): Call decode_x86_feature on
843 GNU_PROPERTY_X86_FEATURE_1_AND.
844 * testsuite/binutils-all/i386/empty.d: New file.
845 * testsuite/binutils-all/i386/empty.s: Likewise.
846 * testsuite/binutils-all/i386/ibt.d: Likewise.
847 * testsuite/binutils-all/i386/ibt.s: Likewise.
848 * testsuite/binutils-all/x86-64/empty-x32.d: Likewise.
849 * testsuite/binutils-all/x86-64/empty.d: Likewise.
850 * testsuite/binutils-all/x86-64/empty.s: Likewise.
851 * testsuite/binutils-all/x86-64/ibt-x32.d: Likewise.
852 * testsuite/binutils-all/x86-64/ibt.d: Likewise.
853 * testsuite/binutils-all/x86-64/ibt.s: Likewise.
855 2017-06-21 H.J. Lu <hongjiu.lu@intel.com>
857 * dwarf.c (READ_ULEB): Use DWARF_VMA_FMT to report error.
858 (READ_SLEB): Likewise.
860 2017-06-21 Nick Clifton <nickc@redhat.com>
863 * dwarf.c (LEB): Rename to SKIP_ULEB and READ_ULEB. Add check for
864 reading a value that is too big for the containing variable.
865 (SLEB): Rename to SKIP_SLEB and READ_SLEB. Add similar check.
866 Replace uses of LEB and SLEB with appropriate new macro.
867 (display_debug_frames): Use an unsigned int for the 'reg'
868 variable. Use a signed long for the 'l' variable.
870 2017-06-20 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
872 * readelf.c (get_s390_segment_type): Add support for the new
873 segment type PT_S390_PGSTE.
874 (get_segment_type): Call get_s390_segment_type.
876 2017-06-19 Nick Clifton <nickc@redhat.com>
879 * objdump.c (disassemble_bytes): Check that there is sufficient
880 data available before attempting to display it.
882 2017-06-06 Simon Marchi <simon.marchi@ericsson.com>
884 * sysinfo.y: Free memory allocated by token NAME.
886 2017-05-30 Anton Kolesov <anton.kolesov@synopsys.com>
888 * doc/binutils.texi: Document new cpu=... disassembler options for ARC.
890 2017-05-30 H.J. Lu <hongjiu.lu@intel.com>
893 * objdump.c (dump_relocs_in_section): Replace get_file_size
894 with bfd_get_file_size to get archive element size.
895 * testsuite/binutils-all/objdump.exp (test_objdump_f): New
897 (test_objdump_h): Likewise.
898 (test_objdump_t): Likewise.
899 (test_objdump_r): Likewise.
900 (test_objdump_s): Likewise.
901 Add objdump tests on archive.
903 2017-05-24 Yao Qi <yao.qi@linaro.org>
905 * objdump.c (disassemble_data): Caller update.
907 2017-05-19 Jose E. Marchesi <jose.marchesi@oracle.com>
909 * objcopy.c (merge_gnu_build_notes): Remove workaround that
910 prevented deleting relocations in duplicated notes in mips64 and
913 2017-05-19 Maciej W. Rozycki <macro@imgtec.com>
915 * testsuite/binutils-all/mips/mips-note-2.d: New test.
916 * testsuite/binutils-all/mips/mips-note-2r.d: New test.
917 * testsuite/binutils-all/mips/mips-note-2-n32.d: New test.
918 * testsuite/binutils-all/mips/mips-note-2-n64.d: New test.
919 * testsuite/binutils-all/mips/mips-note-2r-n32.d: New test.
920 * testsuite/binutils-all/mips/mips-note-2r-n64.d: New test.
921 * testsuite/binutils-all/mips/mips.exp: Define `has_newabi'.
924 2017-05-19 Maciej W. Rozycki <macro@imgtec.com>
926 * testsuite/lib/utils-lib.exp (run_dump_test): Handle the `dump'
929 2017-05-19 Jose E. Marchesi <jose.marchesi@oracle.com>
931 * NEWS: Mention the SPARC M8 support.
933 2017-05-19 Maciej W. Rozycki <macro@imgtec.com>
935 * testsuite/binutils-all/mips/mips.exp: Bail out right away if
938 2017-05-18 Alan Modra <amodra@gmail.com>
940 * strings.c: Don't compare boolean values against TRUE or FALSE.
942 2017-05-15 Jeff Law <law@redhat.com>
944 * readelf.c (display_arc_attribute): Avoid implicit fallthru.
946 2017-05-15 Maciej W. Rozycki <macro@imgtec.com>
948 * testsuite/binutils-all/mips/mips16-undecoded.d: Add `-mips3'
950 * testsuite/binutils-all/mips/mips16e2-undecoded.d: New test.
951 * testsuite/binutils-all/mips/mips16e2-extend-insn.d: New test.
952 * testsuite/binutils-all/mips/mips16-undecoded.s: Remove
954 * testsuite/binutils-all/mips/mips.exp: Run the new tests.
956 2017-05-15 Maciej W. Rozycki <macro@imgtec.com>
958 * readelf.c (print_mips_ases): Handle MIPS16e2 ASE.
959 * NEWS: Mention MIPS16e2 ASE support.
961 2017-05-12 Maciej W. Rozycki <macro@imgtec.com>
963 * testsuite/binutils-all/mips/mips16-extend-insn.d: Adjust BREAK
964 and SDBBP disassembly.
966 2017-05-10 Maciej W. Rozycki <macro@imgtec.com>
968 * testsuite/binutils-all/mips/mips.exp: Define `tempfile' and
969 `copyfile' variables.
971 2017-05-10 Claudiu Zissulescu <claziss@synopsys.com>
973 * readelf.c (decode_ARC_machine_flags): Recognize OSABI v4.
974 (get_arc_section_type_name): New function.
975 (get_section_type_name): Use the above function.
976 (display_arc_attribute): New function.
977 (process_arc_specific): Likewise.
978 (process_arch_specific): Handle ARC specific information.
980 2017-05-09 Kaz Kojima <kkojima@rr.iij4u.or.jp>
982 * MAINTAINERS (SH): Remove myself as SH maintainer.
984 2017-05-02 H.J. Lu <hongjiu.lu@intel.com>
986 * objcopy.c (merge_gnu_build_notes): Cast relcount to unsigned
987 long when comparing with sec->reloc_count.
989 2017-05-02 Nick Clifton <nickc@redhat.com>
991 * objcopy.c (merge_gnu_build_notes): Disable merge if there are
992 more internal relocs than external relocs.
994 2017-05-02 Maciej W. Rozycki <macro@imgtec.com>
996 * testsuite/binutils-all/mips/mips16-undecoded.d: Adjust the
997 disassembly of PC-relative LA and LW synthetic instructions.
999 2017-05-02 Nick Clifton <nickc@redhat.com>
1002 * objdump.c (dump_relocs_in_section): Check for an excessive
1003 number of relocs before attempting to dump them.
1005 2017-05-01 Alan Modra <amodra@gmail.com>
1007 * objcopy.c (merge_gnu_build_notes): Correct code deleting
1010 2017-04-28 Nick Clifton <nickc@redhat.com>
1013 * readelf.c (print_gnu_build_attribute_name): Allow for an empty
1016 2017-04-28 Nick Clifton <nickc@redhat.com>
1019 * readelf.c (process_version_sections): Check for underflow when
1020 computing the start address of the auxillary version data.
1022 2017-04-28 Nick Clifton <nickc@redhat.com>
1025 * dwarf.c (process_extended_line_op): Do not assume that the
1026 string extracted from the section is NUL terminated.
1027 (fetch_indirect_string): If the string retrieved from the section
1028 is not NUL terminated, return an error message.
1029 (fetch_indirect_line_string): Likewise.
1030 (fetch_indexed_string): Likewise.
1032 2017-04-26 Nick Clifton <nickc@redhat.com>
1035 * bucomm.c (get_file_size): Return -1 if file_name is NULL.
1036 * ar.c (main): Fail with usage() invocation if no file names are
1039 2017-04-26 Nick Clifton <nickc@redhat.com>
1041 * readelf.c (process_section_headers): Warn about overlarge
1043 (print_gnu_build_attribute_name): Print the number of unrecognised
1044 note types. Fix formatting in the presence of errors.
1045 (testsuite/binutils-all/note-2-32.s): Fix encoding of numeric notes.
1046 (testsuite/binutils-all/note-2-64.s): Likewise.
1048 2017-04-26 Maciej W. Rozycki <macro@imgtec.com>
1050 * readelf.c (process_mips_specific): Add static GOT support.
1052 2017-04-25 Maciej W. Rozycki <macro@imgtec.com>
1054 * readelf.c (process_mips_specific): Remove error reporting from
1057 2017-04-25 Maciej W. Rozycki <macro@imgtec.com>
1059 * readelf.c (process_mips_specific): Remove null GOT data check.
1061 2017-04-25 Maciej W. Rozycki <macro@imgtec.com>
1063 * testsuite/binutils-all/mips/mips16-alias.d: New test.
1064 * testsuite/binutils-all/mips/mips16-noalias.d: New test.
1065 * testsuite/binutils-all/mips/mips16-alias.s: New test source.
1066 * testsuite/binutils-all/mips/mips.exp: Run the new tests.
1068 2017-04-23 Alan Modra <amodra@gmail.com>
1071 * ar.c (main): Check -a, -b, -i and -N args are given.
1073 2017-04-23 Alan Modra <amodra@gmail.com>
1076 * ar.c (main): Check that an archive file is given after options.
1078 2017-04-23 Alan Modra <amodra@gmail.com>
1081 * objdump.c (disassemble_section): Check bfd_get_section_contents
1084 2017-04-23 Alan Modra <amodra@gmail.com>
1087 * dwarf.c (display_debug_lines_decoded): Don't segfault on NULL
1090 2017-04-21 Nick Clifton <nickc@redhat.com>
1093 * readelf.c (print_gnu_build_attribute_name): Check for an
1094 overlarge name field.
1096 2017-04-13 Nick Clifton <nickc@redhat.com>
1099 * readelf.c (process_dynamic_section): Detect over large section
1100 offsets in the DT_SYMTAB entry.
1102 2017-04-13 Nick Clifton <nickc@redhat.com>
1105 * readelf.c (process_mips_specific): Catch an unfeasible memory
1106 allocation before it happens and print a suitable error message.
1108 2017-04-13 Nick Clifton <nickc@redhat.com>
1110 * objcopy.c: Add --no-merge-notes option to disable note merging.
1111 Add --[no-]merge-notes option to strip, and enable it by default.
1112 (num_bytes): New function.
1113 (merge_gnu_build_notes): Add code to merge stack size notes.
1114 * binutils.texi: Update strip and objcopy documentation.
1115 * readelf.c (print_gnu_build_attribute_name): Use defined
1116 constants for note types.
1118 2017-04-10 John Delsignor <john.delsignore@roguewave.com>
1121 * dwarf.c (display_gdb_index): Correct test for a corrupt address
1124 2017-04-05 Jiong Wang <jiong.wang@arm.com>
1126 * objcopy.c (struct redefine_node): Delete the field "next".
1127 (redefine_sym_list): Deleted.
1128 (redefine_specific_htab): New hash table.
1129 (redefine_specific_reverse_htab): Likewise.
1130 (eq_string_redefnode): New function.
1131 (htab_hash_redefnode): Likewise.
1132 (create_symbol2redef_htab): Likewise.
1133 (add_specific_symbol_node): Likewise.
1134 (create_symbol_htabs): Create redefine_specific_htab and
1135 redefine_specific_reverse_htab.
1136 (lookup_sym_redefinition): Use hash table instead of list.
1137 (redefine_list_append): Likewise, and rename to add_redefine_and_check.
1138 (copy_main): Use redefine_specific_htab instead of redefine_sym_list.
1141 2017-04-04 H.J. Lu <hongjiu.lu@intel.com>
1143 * NEWS: Mention support for ELF SHF_GNU_MBIND and
1145 * readelf.c (get_segment_type): Handle PT_GNU_MBIND_XXX.
1146 (get_elf_section_flags): Handle SHF_GNU_MBIND.
1147 (process_section_headers): Likewise.
1148 * testsuite/binutils-all/mbind1.s: New file.
1149 * testsuite/binutils-all/objcopy.exp: Run readelf test on
1152 2017-04-03 Nick Clifton <nickc@redhat.com>
1155 * readelf.c (get_program_headers): Check for there being too many
1156 program headers before attempting to allocate space for them.
1158 2017-04-03 Nick Clifton <nickc@redhat.com>
1161 * readelf.c (process_mips_specific): Check for an out of range GOT
1162 entry before reading the module pointer.
1164 2017-04-03 Nick Clifton <nickc@redhat.com>
1167 * readelf.c (get_unwind_section_word): Fix snafu checking for
1168 invalid word offsets in ARM unwind information.
1170 2017-03-31 Pip Cet <pipcet@gmail.com>
1172 * NEWS: Use "WebAssembly" consistently.
1173 * testsuite/binutils-all/wasm32/wasm32.exp: Fix copyright notice.
1175 2017-03-30 Pip Cet <pipcet@gmail.com>
1177 * readelf.c: Add support for wasm32 ELF format WebAssembly files.
1178 (guess_is_rela): Likewise.
1179 (dump_relocations): Likewise.
1180 (is_32bit_abs_reloc): Likewise.
1181 (is_none_reloc_): Likewise.
1182 * NEWS: Mention the new support.
1183 * testsuite/lib/binutils-common.exp (is_elf_format): Mark wasm32
1185 (supports_gnu_unique): Mark wasm32 as supporting STB_GNU_UNIQUE.
1186 * testsuite/binutils-all/nm.exp: Mark wasm32 as requiring .size annotations.
1187 * testsuite/binutils-all/wasm32: New directory.
1188 * testsuite/binutils-all/wasm32/create-wasm.d: New file.
1189 * testsuite/binutils-all/wasm32/create-wasm.s: Likewise.
1190 * testsuite/binutils-all/wasm32/custom-section.d: Likewise.
1191 * testsuite/binutils-all/wasm32/custom-section.s: Likewise.
1192 * testsuite/binutils-all/wasm32/invalid-wasm-1.d: Likewise.
1193 * testsuite/binutils-all/wasm32/invalid-wasm-1.s: Likewise.
1194 * testsuite/binutils-all/wasm32/long-sections.d: Likewise.
1195 * testsuite/binutils-all/wasm32/long-sections.s: Likewise.
1196 * testsuite/binutils-all/wasm32/parse-wasm.d: Likewise.
1197 * testsuite/binutils-all/wasm32/parse-wasm.s: Likewise.
1198 * testsuite/binutils-all/wasm32/parse-wasm-2.d: Likewise.
1199 * testsuite/binutils-all/wasm32/parse-wasm-2.s: Likewise.
1200 * testsuite/binutils-all/wasm32/prepared-section.d: Likewise.
1201 * testsuite/binutils-all/wasm32/prepared-section.s: Likewise.
1202 * testsuite/binutils-all/wasm32/wasm32.exp: New file, run tests.
1204 2017-03-29 Alan Modra <amodra@gmail.com>
1206 * doc/binutils.texi (objdump): Document PowerPC -M options.
1208 2017-03-21 Andi Kleen <ak@linux.intel.com>
1210 * objdump.c (unwind_inlines): Add.
1211 (option_values): Add OPTION_INLINES.
1212 (show_line): Unwind inlines if requested.
1213 (main): Parse OPTION_INLINES.
1214 (usage): Document --inlines.
1215 * doc/binutils.texi: Document --inlines.
1218 2017-03-21 Nick Clifton <nickc@redhat.com>
1220 * readelf.c (print_gnu_build_attribute_name): Allow stack
1221 protection notes to contain numeric values. Use a colon rather
1222 than a space to separate a string name from its values. Decode
1223 the numeric value of a stack protection note.
1224 * objcopy.c (merge_gnu_build_notes): Allow version notes to
1225 contain extra text after the protocol version number.
1227 2017-03-20 Mark Wielaard <mark@klomp.org>
1229 * readelf.c (process_program_headers): Move dynamic_addr check
1230 after .dynamic section cross check.
1232 2017-03-17 Nick Clifton <nickc@redhat.com>
1234 * readelf.c (print_gnu_build_attribute_name): Fix off by one error
1235 printing the value for a build note with an ascii name.
1237 2017-03-16 Nick Clifton <nickc@redhat.com>
1239 * readelf.c (print_gnu_build_attribute_name): Add support for
1240 GNU_BUILD_ATTRIBUTE_SHORT_ENUM.
1242 2017-03-14 Nick Clifton <nickc@redhat.com>
1244 * readelf.c (print_gnu_build_attribute_description): Move symbol
1246 (print_symbol_for_build_attribute): New function. ...here.
1247 Add to find the best symbol to associate with an OPEN note.
1248 Add code to cache the symbol table and string table, so that they
1249 are not loaded every time a note is displayed.
1250 * testsuite/binutils-all/note-2-32.s: Add a function symbol.
1251 * testsuite/binutils-all/note-2-64.s: Likewise.
1252 * testsuite/binutils-all/note-2-32.d: Update expected note output.
1253 * testsuite/binutils-all/note-2-64.d: Likewise.
1255 2017-03-13 Alan Modra <amodra@gmail.com>
1256 Taeung Song <treeze.taeung@gmail.com>
1258 * objdump.c (update_source_path): Add abfd param. Add struct
1259 stat var. Pass to try_print_file_open. Warn if source is more
1261 (try_print_file_open, slurp_file): Add struct stat param to
1263 (show_line): Call update_source_path with bfd.
1265 2017-03-10 Chia-Hao Lo <fcamel@gmail.com>
1268 * objdump.c (main): Set do_wide with --wide.
1270 2017-03-10 Nick Clifton <nickc@redhat.com>
1272 * readelf.c (get_machine_name): Rearrange switch table in order of
1273 increasing machine number. Add missing entries.
1275 2017-03-08 H.J. Lu <hongjiu.lu@intel.com>
1278 * readelf.c (decode_x86_isa): Change argument to unsigned int.
1279 (print_gnu_property_note): Retrieve property type and datasz as
1280 4-byte integer. Consolidate property datasz check. Check
1281 GNU_PROPERTY_LOPROC and GNU_PROPERTY_LOUSER.
1282 * testsuite/binutils-all/i386/pr21231a.d: New file.
1283 * testsuite/binutils-all/i386/pr21231a.s: Likewise.
1284 * testsuite/binutils-all/i386/pr21231b.d: Likewise.
1285 * testsuite/binutils-all/i386/pr21231b.s: Likewise.
1286 * testsuite/binutils-all/x86-64/pr21231a.d: Likewise.
1287 * testsuite/binutils-all/x86-64/pr21231a.s: Likewise.
1288 * testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
1289 * testsuite/binutils-all/x86-64/pr21231b.s: Likewise.
1291 2017-03-06 Nick Clifton <nickc@redhat.com>
1293 * readelf.c (print_gnu_build_attribute_name): Read byte values
1294 from the name string as unsigned bytes.
1295 (process_notes_at): Use memcpy to copy an unterminated name
1298 2017-03-06 Sam Thursfield <sam.thursfield@codethink.co.uk>
1300 * configure.ac (AC_CHECK_DECLS): Add asprintf.
1301 * config.in: Regenerate.
1302 * configure: Regenerate.
1304 2017-03-02 Nick Clifton <nickc@redhat.com>
1306 * readelf.c (print_gnu_build_attribute_description): Use global
1307 symbols for OPEN attributes if at all possible.
1308 * objcopy.c (is_merged_note_section): Support build note sections
1309 without the SHF_GNU_BUILD_NOTE section flag set.
1311 2017-03-02 Jan Kratochvil <jan.kratochvil@redhat.com>
1313 * dwarf.c (debug_displays_assert): New static assertion.
1315 2017-03-02 Jan Kratochvil <jan.kratochvil@redhat.com>
1317 * dwarf.h (enum dwarf_section_display_enum): Add loclists and rnglists.
1319 2017-03-01 Nick Clifton <nickc@redhat.com>
1321 * readelf.c (get_note_type): Add support for GNU_BUILD_NOTEs.
1322 (get_gnu_elf_note_type): Add support for GNU_PROPERTY_NOTEs.
1323 (decode_x86_isa): New function.
1324 (print_gnu_property_note): New function.
1325 (print_gnu_note): Handle GNU_PROPERTY_NOTEs.
1326 (print_gnu_build_attribute_description): New function.
1327 (print_gnu_build_attribute_name): New function.
1328 (process_note): Add support for GNU_BUILD_NOTEs.
1329 * objcopy.c (--merge-notes): New command line option.
1330 (copy_options): Add merge-notes.
1331 (copy_usage): Likewise.
1332 (is_merge_note_section): New function.
1333 (merge_gnu_build_notes): New function.
1334 (copy_object): Merge note sections if asked to do so.
1335 (skip_section): Add skip_copy parameter. Add support for skipping
1336 merged note sections.
1337 (copy_relocations_in_section): Update call to skip_section.
1338 (copy_section): Likewise.
1339 (copy_main): Add support for merge-notes option.
1340 * doc/binutils.texi: Document the new option to objcopy.
1341 * NEWS: Mention the new feature.
1342 * testsuite/binutils-all/note-2-32.d: New test. Checks note
1343 merging on 32-bit targets.
1344 * testsuite/binutils-all/note-2-32.s: New test source file.
1345 * testsuite/binutils-all/note-2-64.d: New test. Like note-2-32.d
1346 but for 64-bit targets.
1347 * testsuite/binutils-all/note-2-64.s: New test source file.
1348 * testsuite/binutils-all/objcopy.exp: Run the new test.
1350 2017-02-28 Peter Bergner <bergner@vnet.ibm.com>
1352 * objdump.c (main): Use remove_whitespace_and_extra_commas.
1354 2017-02-27 Jan Kratochvil <jan.kratochvil@redhat.com>
1356 Fix compilation with GCC 4.4.7.
1357 * dwarf.c (display_loclists_list, display_debug_rnglists_list):
1358 Initialize begin and end.
1360 2017-02-25 Alan Modra <amodra@gmail.com>
1362 * testsuite/binutils-all/dw5.S: Replace .string with .asciz.
1363 Support hpux .comm variant.
1364 * testsuite/binutils-all/readelf.exp: Define HPUX when assembling
1365 dw5 test for hppa64-hpux.
1367 2017-02-24 Nick Clifton <nickc@redhat.com>
1369 * readelf.c (show_name, do_dynamic, do_syms, do_dyn_syms,
1370 (do_reloc, do_sections, do_section_groups, do_section_details,
1371 (do_segments, do_unwind, do_using_dynamic, do_header, do_dump,
1372 (do_version, do_histogram, do_debugging, do_arch, do_notes,
1373 (do_archive_index, is_32bit_elf, decompress_dumps): Use
1375 (parse_args): Treat the do_* variables as booleans.
1376 (print_vma): Return an unsigned int.
1377 (print_symbol): Change width parameter to signed int.
1378 (is_ia64_vms): Change return type to bfd_boolean.
1379 (guess_is_rela): Likewise.
1380 (slurp_rela_relocs): Likewise.
1381 (slurp_rel_relocs): Likewise.
1382 (dump_relocations): Likewise.
1383 (process_file_header): Likewise.
1384 (get_program_headers): Likewise.
1385 (process_program_headers): Likewise.
1386 (process_section_headers): Likewise.
1387 (process_section_groups): Likewise.
1388 (dump_ia64_vms_dynamic_fixups): Likewise.
1389 (dump_ia64_vms_dynamic_relocs): Likewise.
1390 (process_ia64_vms_dynamic_relocs): Likewise.
1391 (process_relocs): Likewise.
1392 (dump_ia64_unwind): Likewise.
1393 (ia64_process_unwind): Likewise.
1394 (dump_hppa_unwind): Likewise.
1395 (slurp_hppa_unwind_table): Likewise.
1396 (hppa_process_unwind): Likewise.
1397 (decode_arm_unwind_bytecode): Likewise.
1398 (decode_tic6x_unwind_bytecode): Likewise.
1399 (decode_arm_unwind): Likewise.
1400 (dump_arm_unwind): Likewise.
1401 (arm_process_unwind): Likewise.
1402 (process_unwind): Likewise.
1403 (get_32bit_dynamic_section): Likewise.
1404 (get_64bit_dynamic_section): Likewise.
1405 (process_dynamic_section): Likewise.
1406 (process_version_sections): Likewise.
1407 (process_symbol_table): Likewise.
1408 (process_syminfo): Likewise.
1409 (apply_relocations): Likewise.
1410 (disassemble_section): Likewise.
1411 (dump_section_as_strings): Likewise.
1412 (dump_section_as_bytes): Likewise.
1413 (load_specific_debug_section): Likewise.
1414 (load_debug_section): Likewise.
1415 (display_debug_section): Likewise.
1416 (process_section_contents): Likewise.
1417 (process_attributes): Likewise.
1418 (process_nds32_specific): Likewise.
1419 (process_gnu_liblist): Likewise.
1420 (print_core_note): Likewise.
1421 (print_gnu_note): Likewise.
1422 (print_v850_note): Likewise.
1423 (process_netbsd_elf_note): Likewise.
1424 (print_stapsdt_note): Likewise.
1425 (print_ia64_vms_note): Likewise.
1426 (process_note): Likewise.
1427 (process_notes_at): Likewise.
1428 (process_corefile_note_segments): Likewise.
1429 (process_v850_notes): Likewise.
1430 (process_note_sections): Likewise.
1431 (process_notes): Likewise.
1432 (process_arch_specific): Likewise.
1433 (get_file_header): Likewise.
1434 (process_object): Likewise.
1435 (process_archive): Likewise.
1436 (process_file): Likewise.
1437 (section_subset): Make static.
1438 (get_mips_reg_size): Return a signed integer.
1439 (process_object): Reverse the logic of the return value.
1440 (process_archive): Likewise.
1441 (process_file): Likewise.
1442 (process_program_headers): Fix snafu - if the program headers are
1443 not available then this is not a cause to fail.
1444 (process_corefile_note_segments): Likewise.
1446 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
1448 * readelf.c (get_ver_flags): Tidy the formatting of the string
1451 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
1453 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Make
1455 <SHT_GNU_verneed>: Likewise.
1457 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
1459 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Limit
1460 the number of entries processed by the section size. Don't
1461 break out of the loop if `ent.vd_next' is 0.
1463 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1465 * testsuite/binutils-all/dw5.S: New file.
1466 * testsuite/binutils-all/dw5.W: New file.
1467 * testsuite/binutils-all/readelf.exp (readelf -wiaoRlL): New test.
1469 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1471 * dwarf.c (read_and_display_attr_value): Support DW_FORM_data16.
1473 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1475 * dwarf.c (display_debug_macro): Support DWARF-5. Rename
1478 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1480 * dwarf.c (decode_location_expression): Support DW_OP_implicit_pointer,
1481 DW_OP_const_type, DW_OP_regval_type, DW_OP_deref_type, DW_OP_convert
1482 and DW_OP_reinterpret.
1483 (read_and_display_attr_value): Support DW_AT_call_value,
1484 DW_AT_call_data_value, DW_AT_call_target and
1485 DW_AT_call_target_clobbered.
1487 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1489 * dwarf.c (fetch_indirect_line_string): New function.
1490 (abbrev_attr): New field implicit_const.
1491 (add_abbrev_attr): New parameter implicit_const.
1492 (process_abbrev_section): Support DW_FORM_implicit_const.
1493 (decode_location_expression): Support DW_OP_entry_value.
1494 (read_and_display_attr_value): Add parameter implicit_const. Support
1495 DW_FORM_line_strp and DW_FORM_implicit_const.
1496 (read_and_display_attr): Add parameter implicit_const.
1497 (process_debug_info): Support line_str and DWARF-5.
1498 (read_debug_line_header): Support DWARF-5.
1499 (display_formatted_table): New function.
1500 (display_debug_lines_raw): New parameter file. Support DWARF-5.
1501 (display_debug_lines_decoded): New parameter fileptr. Support DWARF-5.
1502 (display_debug_lines): Pass file parameter.
1503 (display_debug_macro): Update read_and_display_attr_value caller.
1504 (display_debug_abbrev): Support DW_FORM_implicit_const.
1505 (display_loclists_list): New function.
1506 (display_loc_list): Support .debug_loclists.
1507 (display_debug_ranges_list): New function from display_debug_ranges.
1508 (display_debug_rnglists_list): New function.
1509 (display_debug_ranges): Support .debug_rnglists.
1510 (debug_displays): Add .debug_line_str, .debug_loclists and
1512 * dwarf.h: Include dwarf2.h
1513 (DWARF2_Internal_LineInfo): Add li_offset_size.
1514 (DWARF2_Internal_CompUnit): Add cu_unit_type.
1515 (enum dwarf_section_display_enum): Add line_str.
1516 * readelf.c (process_section_headers): Add rnglists and loclists.
1518 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1520 * dwarf.c (display_block): Add parameter delimiter.
1521 (decode_location_expression): Update display_block callers.
1522 (read_and_display_attr_value): Add parameter delimiter.
1523 (read_and_display_attr, display_debug_macro): Update
1524 read_and_display_attr_value caller.
1526 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1528 * dwarf.c (display_loc_list): Use dwarf_vma for offset, base_address
1530 (display_loc_list_dwo): Use dwarf_vma for offset.
1531 (display_debug_loc): Use dwarf_vma for offset, base_address.
1532 (struct range_entry, range_entry_compar): Use dwarf_vma for
1534 (display_debug_ranges): Use dwarf_vma for ranges_offset, offset and
1537 2017-02-23 Nick Clifton <nickc@redhat.com>
1539 * readelf.c (display_tag_value): Use an explicit signed type for
1541 (display_gnu_attributes): Use an unsigned integer type for
1543 (display_power_gnu_attribute): Likewise.
1544 (display_s390_gnu_attribute): Likewise.
1545 (display_sparc_hwcaps): Likewise.
1546 (display_sparc_hwcaps2): Likewise.
1547 (display_sparc_gnu_attribute): Likewise.
1548 (display_mips_gnu_attribute): Likewise.
1549 (display_tic6x_attribute): Likewise.
1550 (display_raw_attribute): Likewise.
1551 (process_attributes): Likewise.
1552 (process_arm_specific): Delete redundant function.
1553 (process_power_specific): Likewise.
1554 (process_s390_specific): Likewise.
1555 (process_sparc_specific): Likewise.
1556 (process_tic6x_specific): Likewise.
1557 (process_msp430x_specific): Likewise.
1558 (display_public_gnu_attributes): New function. Displays known
1559 information about an unknown gnu attribute.
1560 (display_generic_attribute): New function. Calls
1561 display_tag_value for non-nul tags.
1562 (process_arch_specific): Call process_attributes even for
1563 architectures not known to specifically support gnu attributes.
1565 2017-02-22 Jan Kratochvil <jan.kratochvil@redhat.com>
1567 * dwarf.c (decode_location_expression): Display also OP.
1569 2017-02-22 Maciej W. Rozycki <macro@imgtec.com>
1571 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Print a
1572 new line between the heading and the first version definition
1575 2017-02-20 Nick Clifton <nickc@redhat.com>
1578 * dwarf.c (cu_tu_indexes_read): Move into...
1579 (load_cu_tu_indexes): ... here. Change the variable into
1580 tri-state. Change the function into boolean, returning
1581 false if the indicies could not be loaded.
1582 (find_cu_tu_set): Return NULL if the indicies could not be
1585 2017-02-17 Nick Clifton <nickc@redhat.com>
1588 * readelf.c (find_section_in_set): Test for invalid section
1591 2017-02-17 Nick Clifton <nickc@redhat.com>
1593 * readelf.c (get_section_type_name): Add decoding of GNU section
1596 2017-02-15 Nick Clifton <nickc@redhat.com>
1598 * MAINTAINERS: (MIPS, MN10300): Move Eric Christopher to Past
1599 Maintainers section.
1601 2017-02-14 Nick Clifton <nickc@redhat.com>
1604 * readelf.c (dump_section_as_strings): Reset the start address if
1605 no decompression is perfromed.
1606 (dump_section_as_bytes): Likewise.
1608 2017-02-14 Nick Clifton <nickc@redhat.com>
1611 * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or
1614 2017-02-14 Nick Clifton <nickc@redhat.com>
1617 * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE
1619 (parse_number): Exit early if passed an empty string.
1621 2017-02-14 Nick Clifton <nickc@redhat.com>
1624 * readelf.c (IN_RANGE): New macro. Tests for an address + offset
1625 being within a given range.
1626 (target_specific_reloc_handling): Use macro to test for underflow
1627 as well as overflow of reloc offset.
1629 2017-02-13 Nick Clifton <nickc@redhat.com>
1632 * nm.c (file_symbol): Add test of string length before testing
1635 2017-02-13 Nick Clifton <nickc@redhat.com>
1638 * readelf.c (dump_section_as_bytes): Handle the case where
1639 uncompress_section_contents returns false.
1640 (dump_section_as_bytes, load_specific_debug_section): Likewise.
1642 2017-02-13 Nick Clifton <nickc@redhat.com>
1645 * readelf.c (get_compression_header): Add size parameter. Check
1646 size against sizeof compression header before attempting to
1648 (process_section_headers): Pass size to get_compression_header.
1649 (dump_section_as_strings): Likewise.
1650 (dump_section_as_bytes): Likewise.
1651 (load_specific_debug_section): Likewise.
1653 2017-02-13 Nick Clifton <nickc@redhat.com>
1656 * readelf.c (process_version_sections): Include size of auxillary
1657 version information when checking for buffer overflow.
1659 2017-02-13 Nick Clifton <nickc@redhat.com>
1662 * readelf.c (process_section_contents): Fix off by one error
1663 reporting un-dumped sections.
1665 2017-02-13 Nick Clifton <nickc@redhat.com>
1668 * readelf.c (target_specific_reloc_handling): Add num_syms
1669 parameter. Check for symbol table overflow before accessing
1670 symbol value. If reloc pointer is NULL, discard all saved state.
1671 (apply_relocations): Pass num_syms to target_specific_reloc_handling.
1672 Call target_specific_reloc_handling with a NULL reloc pointer
1673 after processing all of the relocs.
1675 2017-02-13 Nick Clifton <nickc@redhat.com>
1678 * readelf.c (target_specific_reloc_handling): Add end parameter.
1679 Check for buffer overflow before writing relocated values.
1680 (apply_relocations): Pass end to target_specific_reloc_handling.
1682 2017-01-27 Dilyan Palauzov <dilyan.palauzov@aegee.org>
1683 Nick Clifton <nickc@redhat.com>
1686 * doc/binutils.texi (ar): Extend documentation of the --plugin
1687 option. Include a description of where the plugins should be
1691 2017-01-23 Nick Clifton <nickc@redhat.com>
1693 * MAINTAINERS: Add Bernd to Past Maintainers section.
1694 (SCORE): Remove Mei Ligang as maintainer. Add to Past Maintainers
1697 2017-01-23 Bernd Schmidt <bschmidt@redhat.com>
1699 * MAINTAINERS (BFIN): Remove myself as Blackfin maintainer.
1701 2017-01-20 Andrew Burgess <andrew.burgess@embecosm.com>
1703 * objdump.c (dump_section_header): Extract max section name length
1704 from data parameter, use this when formatting output.
1705 (find_longest_section_name): New function.
1706 (dump_headers): Calculate longest section name when in wide mode,
1707 reformat to unify printing of header line.
1709 2017-01-18 Bernhard Rosenkranzer <bero@lindev.ch>
1712 * arlex.l: Support processing with flex 2.6.3.
1713 * deflex.l: Likewise.
1715 2017-01-17 Dmitry Timoshkov <dmitry@baikal.ru>
1717 * resbin.c: Optional dialog control data immediately follows
1718 the control description without alignment.
1719 * testsuite/binutils-all/windres/controldata.rc: New test.
1721 * testsuite/binutils-all/windres/controldata.rsd: New test.
1723 2017-01-12 Nick Clifton <nickc@redhat.com>
1726 * NEWS: Mention the new feature.
1727 * testsuite/binutils-all/objdump.exp (test_build_id_debuglink):
1728 New proc to test the location of separate debug info files using
1729 the build-id method.
1731 2017-01-10 Nick Clifton <nickc@redhat.com>
1734 * stabs.c (parse_stab_members): Fix thinko checking for g++
1735 version 1 stabs information.
1737 2017-01-09 Nick Clifton <nickc@redhat.com>
1739 * objdump.c (display_file): Add new parameter 'last_file'. If
1740 last_file is true, do not call bfd_close at the end of the
1742 (main): Set the value of the last_file parameter when calling
1745 2017-01-09 Alan Modra <amodra@gmail.com>
1747 * readelf.c (process_section_headers): Correct .rel.dyn/.rela.dyn
1750 2017-01-06 Nick Clifton <nickc@redhat.com>
1752 * MAINTAINERS: Move Paul Brook to the Past Maintainers section.
1754 2017-01-04 Dilan Palauzov <dilyan.palauzov@aegee.org>
1757 * syslex.l (option): Add noyywrap
1760 2017-01-02 Alan Modra <amodra@gmail.com>
1762 Update year range in copyright notice of all files.
1764 For older changes see ChangeLog-2016
1766 Copyright (C) 2017 Free Software Foundation, Inc.
1768 Copying and distribution of this file, with or without modification,
1769 are permitted in any medium without royalty provided the copyright
1770 notice and this notice are preserved.
1776 version-control: never