1 2017-11-17 Nick Clifton <nickc@redhat.com>
4 * ar.c (write_archive): Free the temporary file name.
6 2017-11-17 Nick Clifton <nickc@redhat.com>
8 * readelf.c (process_archive): Include member name in the
9 file_name of the filedata structure.
11 2017-11-15 Alan Modra <amodra@gmail.com>
14 * objcopy.c (copy_main): Free tmpname.
16 2017-11-15 Nick Clifton <nickc@redhat.com>
19 * dwarf.h (enum dwarf_section_display_enum): Add gnu_debuglink,
20 gnu_debugaltlink and separate_debug_str.
21 (struct dwarf_section): Add filename field.
22 Add prototypes for load_separate_debug_file, close_debug_file and
24 * dwarf.c (do_debug_links): New.
25 (do_follow_links): New.
26 (separate_debug_file, separate_debug_filename): New.
27 (fetch_alt_indirect_string): New function. Retrieves a string
28 from the debug string table in the separate debug info file.
29 (read_and_display_attr_value): Use it with DW_FORM_GNU_strp_alt.
30 (load_debug_section_with_follow): New function. Like
31 load_debug_section, but if the first attempt fails, then tries
32 again in the separate debug info file.
33 (introduce): New function.
34 (process_debug_info): Use load_debug_section_with_follow and
36 (load_debug_info): Likewise.
37 (display_debug_lines_raw): Likewise.
38 (display_debug_lines_decoded): Likewise.
39 (display_debug_macinfo): Likewise.
40 (display_debug_macro): Likewise.
41 (display_debug_abbrev): Likewise.
42 (display_debug_loc): Likewise.
43 (display_debug_str): Likewise.
44 (display_debug_aranges): Likewise.
45 (display_debug_addr); Likewise.
46 (display_debug_frames): Likewise.
47 (display_gdb_index): Likewise.
48 (process_cu_tu_index): Likewise.
49 (load_cu_tu_indexes): Likewise.
50 (display_debug_links): New function. Displays the contents of a
51 .gnu_debuglink or .gnu_debugaltlink section.
52 (calc_gnu_debuglink_ctc32):New function. Calculates a CRC32
54 (check_gnu_debuglink): New function. Checks the CRC of a
55 potential separate debug info file.
56 (parse_gnu_debuglink): New function. Reads a CRC value out of a
57 .gnu_debuglink section.
58 (check_gnu_debugaltlink): New function.
59 (parse_gnu_debugaltlink): New function. Reads the build-id value
60 out of a .gnu_debugaltlink section.
61 (load_separate_debug_info): New function. Finds and loads a
62 separate debug info file.
63 (load_separate_debug_file): New function. Attempts to find and
64 follow a link to a separate debug info file.
65 (free_debug_memory): Free the separate debug info file
67 (opts_table): Add "follow-links" and "links".
68 (dwarf_select_sections_by_letters): Add "k" and "K".
69 (debug_displays): Reformat. Add .gnu-debuglink and
71 Add an extra entry for .debug_str in a separate debug info file.
72 * doc/binutils.texi: Move description of debug dump features
73 common to both readelf and objdump into...
74 * objdump.c (usage): Add -Wk and -WK.
75 (load_specific_debug_section): Initialise the filename field in
76 the dwarf_section structure.
77 (close_debug_file): New function.
78 (open_debug_file): New function.
79 (dump_dwarf): Load and dump the separate debug info sections.
80 * readelf.c (struct filedata): New structure. Contains various
81 variables that used to be global:
82 (current_file_size, string_table, string_table_length, elf_header)
83 (section_headers, program_headers, dump_sects, num_dump_sects):
84 Move into filedata structure.
85 (cmdline): New global variable. Contains list of sections to dump
86 by number, as specified on the command line.
87 Add filedata parameter to most functions.
88 (load_debug_section): Load the string table if it has not already
90 (close_file): New function.
91 (close_debug_file): New function.
92 (open_file): New function.
93 (open_debug_file): New function.
94 (process_object): Process sections in any separate debug info files.
95 * doc/debug.options.texi: New file. Add description of =links and
96 =follow-links options.
97 * NEWS: Mention the new feature.
98 * elfcomm.c: Have the byte get functions take a const pointer.
99 * elfcomm.h: Update prototypes.
100 * testsuite/binutils-all/dw5.W: Update expected output.
101 * testsuite/binutils-all/objdump.WL: Update expected output.
102 * testsuite/binutils-all/objdump.exp: Add test of -WK and -Wk.
103 * testsuite/binutils-all/readelf.exp: Add test of -wK and -wk.
104 * testsuite/binutils-all/readelf.k: New file.
105 * testsuite/binutils-all/objdump.Wk: New file.
106 * testsuite/binutils-all/objdump.WK2: New file.
107 * testsuite/binutils-all/linkdebug.s: New file.
108 * testsuite/binutils-all/debuglink.s: New file.
110 2017-11-10 Jim Wilson <jimw@sifive.com>
112 * testsuite/binutils-all/objdump.exp: Expect the debug_ranges test to
115 2017-11-07 Jim Wilson <jimw@sifive.com>
117 * MAINTAINERS (RISC-V): Fix typo in my email address.
119 2017-11-07 Palmer Dabbelt <palmer@sifive.com>
121 * MAINTAINERS (RISC-V): Add Jim Wilson as a maintainer.
122 Clean up Andrew's entry (remove trailing space, add tabs).
123 Change Palmer's email address, and clean up entry (add tabs).
125 2017-11-07 Alan Modra <amodra@gmail.com>
127 * dwarf.c (read_uleb128): Properly pluralize messages.
128 (display_debug_lines_raw, display_debug_loc): Likewise.
129 (display_debug_names, process_cu_tu_index): Likewise.
130 * od-macho.c (dump_code_signature_superblob): Likewise.
131 * readelf.c (process_program_headers): Likewise.
132 (process_section_header, process_relocs): Likewise.
133 (hppa_process_unwind, arm_process_unwind): Likewise.
134 (process_dynamic_section, process_version_sections): Likewise.
135 (process_symbol_table, process_syminfo): Likewise.
136 (apply_relocations, process_mips_specific): Likewise.
137 (process_gnu_liblist, process_notes_at): Likewise.
138 (process_archive): Likewise.
139 * testsuite/binutils-all/dw2-1.W,
140 * testsuite/binutils-all/dw2-3.W,
141 * testsuite/binutils-all/dw2-3gabi.W,
142 * testsuite/binutils-all/dw5.S,
143 * testsuite/binutils-all/dw5.W,
144 * testsuite/binutils-all/i386/compressed-1a.d,
145 * testsuite/binutils-all/libdw2-compressedgabi.out,
146 * testsuite/binutils-all/objdump.W,
147 * testsuite/binutils-all/readelf.r,
148 * testsuite/binutils-all/readelf.r-64,
149 * testsuite/binutils-all/x86-64/compressed-1a.d: Update
150 for pluralization fixes.
152 2017-11-07 Alan Modra <amodra@gmail.com>
154 * sysdep.h (textdomain, bindtextdomain): Use safer "do nothing".
155 (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS.
157 2017-11-03 Claudiu Zissulescu <claziss@synopsys.com>
159 * doc/binutils.texi (ARC): Update disassembler options.
160 * testsuite/binutils-all/arc/hexprint.s: New file.
161 * testsuite/binutils-all/arc/objdump.exp: Test hex printing
164 2017-11-03 Mingi Cho <mgcho.minic@gmail.com>
165 Nick Clifton <nickc@redhat.com>
168 * dwarf.c (read_cie): Use bfd_size_type for
169 augmentation_data_len.
170 (display_augmentation_data): New function.
171 (display_debug_frames): Use it.
172 Check for integer overflow when testing augmentation_data_len.
174 2017-11-02 Mingi Cho <mgcho.minic@gmail.com>
177 * readelf.c (print_gnu_property_note): Improve overflow checks so
178 that they will work on a 32-bit host.
180 2017-11-01 James Bowman <james.bowman@ftdichip.com>
182 * readelf.c (is_16bit_abs_reloc): Add entry for FT32.
184 2017-10-31 Nick Clifton <nickc@redhat.com>
186 * readelf.c (process_relocs): Tell users if no static relocs were
187 found, but if they had added --use-dynamic to the command line
188 then relocs would have been displayed.
190 2017-10-28 Alan Modra <amodra@gmail.com>
193 * readelf.c (process_archive_index_and_symbols): Ensure ar_size
194 field is zero terminated for strtoul.
195 (setup_archive, get_archive_member_name): Likewise.
197 2017-10-27 Simon Marchi <simon.marchi@ericsson.com>
199 * dwarf.c (struct Frame_Chunk) <cfa_reg>: Change type to
201 (display_debug_frames): Read CFA reg as an unsigned number.
203 2017-10-25 Alan Modra <amodra@gmail.com>
205 * nm.c (filter_symbols): Match "__gnu_lto_slim" optionally prefixed
208 2017-10-18 Eric Botcazou <ebotcazou@adacore.com>
210 * MAINTAINERS: Add myself as Visium maintainer.
212 2017-10-18 Nick Clifton <nickc@redhat.com>
214 * README-how-to-make-a-release: A note about checking file and
215 directory permissions.
217 * MAINTAINERS: Move Svein Seldal to Past Maintainers section.
219 2017-10-18 Alan Modra <amodra@gmail.com>
222 * readelf.c (print_core_note): Ensure "count" sanity check
223 calculation doesn't overflow.
224 (process_notes_at): Perform note namesz and descsz checks
225 using unsigned comparisons against data remaining. Catch
226 alignment overflow of namesz and descsz too. Don't allocate a
227 temp for terminating "name" when there is space available
230 2017-10-17 Tom Tromey <tom@tromey.com>
232 * MAINTAINERS: Add myself as dwarf-mode.el maintainer.
234 2017-10-11 Peeter Joot <peeter.joot@lzlabs.com>
235 Nick Clifton <nickc@redhat.com>
237 * dwarf.c (read_and_display_attr_value): Handle DW_AT_endianity,
238 DW_END_default, DW_END_big, DW_END_little, DW_ATE_UCS,
239 DW_ATE_ASCII, DW_CC_pass_by_reference, DW_CC_pass_by_value,
240 DW_CC_GNU_renesas_sh, DW_CC_GNU_borland_fastcall_i386,
241 DW_AT_decimal_sign, DW_AT_defaulted, DW_AT_discr_list.
242 (get_TAG_name): Report user generated tag values.
243 * testsuite/binutils-all/dwarf-attributes.S: New test.
244 * testsuite/binutils-all/dwarf-attributes.W. Expected output from
246 * testsuite/binutils-all/readelf.exp: Run the new test.
248 2017-10-10 Tom Tromey <tom@tromey.com>
250 * dwarf-mode.el: Bump to version 1.4.
252 2017-10-10 Tom Tromey <tom@tromey.com>
254 * dwarf-mode.el (dwarf--process, dwarf--deletion-region): New
256 (dwarf--check-running, dwarf--sentinel, dwarf--invoke)
257 (dwarf--filter): New functions.
258 (dwarf-do-insert-substructure, dwarf-do-refresh): Call
259 dwarf--check-running, dwarf--invoke.
260 (dwarf-browse): Initialize new variables.
262 2017-10-10 Tom Tromey <tom@tromey.com>
264 * dwarf-mode.el: Set lexical-binding.
266 2017-10-10 Tom Tromey <tom@tromey.com>
268 * dwarf-mode.el (dwarf-mode-map): New defvar.
270 2017-10-10 Tom Tromey <tromey@sourceware.org>
273 * dwarf.c (process_debug_info): Skip any comp unit that ends
274 before dwarf_start_die.
276 2017-10-06 Alan Modra <amodra@gmail.com>
278 * dwarf.c (process_debug_info): Consolidate header length checks.
279 (display_debug_pubnames_worker): Use "start" to read header.
280 Properly check header length and report errors earlier.
281 Simplify loop printing pubnames.
282 (get_line_filename_and_dirname): Catch small negative "length"
284 (display_debug_aranges): Likewise. Report header errors
285 earlier using standardized message.
286 (display_debug_names): Likewise.
288 2017-10-05 Joseph Myers <joseph@codesourcery.com>
290 * readelf.c (decode_arm_unwind): Initialize res to TRUE.
292 2017-10-05 Nick Clifton <nickc@redhat.com>
295 * objcopy.c (strip_main): Add 'M' character to short options list
296 when calling getopt_long.
298 2017-10-05 Nick Clifton <nickc@redhat.com>
301 * readelf.c (dump_relocations): Do not truncate reloc names when
302 displaying output in wide mode.
304 2017-10-05 Nick Clifton <nickc@redhat.com>
306 * README-how-to-make-a-release: Merge steps 3, 4 and 5, and insert
307 the git tag operation at the correct location.
309 2017-10-05 Alan Modra <amodra@gmail.com>
312 * dwarf.c (read_cie): Don't compare "start" and "end" pointers
313 after adding a possibly wild length to "start", compare the length
314 to the difference of the pointers instead. Remove now redundant
315 "negative" length test.
317 2017-10-05 Tristan Gingold <tgingold@free.fr>
319 * MAINTAINERS: Update email address. Redirect release maintainer
320 to global maitainers.
322 2017-10-01 Alan Modra <amodra@gmail.com>
326 * objdump.c (load_specific_debug_section): Introduce a temp to
327 stop bfd_get_full_section_contents NULLing out section->start.
329 2017-10-01 Alan Modra <amodra@gmail.com>
332 * objdump.c (load_specific_debug_section): Allocate an extra byte
333 for a terminating NUL.
335 2017-09-30 Alan Modra <amodra@gmail.com>
338 * objdump.c: Formatting.
339 (show_line): Reset prev_line when function name changes.
341 2017-09-27 Nick Clifton <nickc@redhat.com>
344 * dwarf.c (process_debug_info): Add a check for a negative
347 2017-09-27 Alan Modra <amodra@gmail.com>
350 * readelf.c (process_symbol_table): Check that DT_HASH symbol
351 chains are only visited once, and report an error if not. Display
352 invalid symbol index if chain is out of range. Use the same logic
353 when calculating histograms rather than the PR 17531 fix. Delete
354 bogus check that chained index is less than number of buckets.
356 2017-09-26 Nick Clifton <nickc@redhat.com>
359 * dwarf.c (get_line_filename_and_dirname): Add extra checks for
362 2017-09-26 Nick Clifton <nickc@redhat.com>
364 * README-how-to-make-a-release: New file.
366 2017-09-26 Alan Modra <amodra@gmail.com>
369 * dwarf.c (READ_ULEB): Don't use DWARF_VMA_FMT in translated string.
370 (READ_SLEB): Likewise.
371 * readelf.c (bfd_vmatoa): New function.
372 (get_data, get_dynamic_data): Use it for printing error messages.
374 2017-09-25 H.J. Lu <hongjiu.lu@intel.com>
377 * nm.c (display_rel_file): Free memory returned from
378 bfd_get_synthetic_symtab.
380 2017-09-22 Alexandre Oliva <aoliva@redhat.com>
382 * dwarf.h (debug_info): Add loc_views and num_loc_views.
383 * dwarf.c (vm1): New constant.
384 (print_dwarf_view): New function.
385 (read_and_display_attr_value): Support DW_AT_GNU_locviews.
386 (process_debug_info): Keep num_loc_offsets and num_loc_views
388 (display_view_pair_list): New function.
389 (display_loc_list_dwo): Take vstart_ptr; update it. Dump
390 location view pairs before the range they apply to, when a
391 viewlist augments the loc list.
392 (display_loc_list): Likewise. Check view numbers in range
394 (display_loclists_list): Likewise. Handle view pair entries,
395 and warn on trailing ones.
396 (loc_views): New variable.
397 (loc_offsets_compar): Compare loc_views if loc_offsets are the
399 (display_debug_loc): Check and sort loc_views too. Accept
400 loc_view as expected_start. Skip if lists and views are the
401 same. Dump locview list separately in order, and pass the
402 locview list base to each list dump function. Warn and skip
403 overlap and hole checking if we find loclists and locviews to
405 * testsuite/binutils-all/locview-1.s: New.
406 * testsuite/binutils-all/readelf.locview-1: New.
407 * testsuite/binutils-all/locview-2.s: New.
408 * testsuite/binutils-all/readelf.locview-2: New.
409 * testsuite/binutils-all/readelf.exp: Run new tests. Fix
410 option spelling in pr18374 fail message. XFAIL dw5 test on
413 2017-09-22 Alan Modra <amodra@gmail.com>
415 * testsuite/binutils-all/readelf.exp: Don't perror and exit on
416 bintest.s assembly failure. Report tests unresolved instead.
417 Likewise for version note test, pr18374, decompress, and dw5
419 (readelf_test): Set testname to include both option and binary
420 file name. Use for pass/fail.
422 2017-09-21 Maciej W. Rozycki <macro@imgtec.com>
424 * readelf.c (get_machine_flags) <E_MIPS_MACH_5900>: New case.
426 2017-09-05 Nick Clifton <nickc@redhat.com>
429 * readelf.c (process_mips_specific): Add checks for a NULL data
432 2017-09-05 Alexander Fedotov <alexander.fedotov@nxp.com>
433 Edmar Wienskoski <edmar.wienskoski@nxp.com
435 * readelf.c (get_elf_section_flags): Add VLE.
436 (process_section_headers): Add VLE key to details.
438 2017-08-25 Alan Modra <amodra@gmail.com>
441 * readelf.c (process_version_sections <SHT_GNU_verdef>): Check
442 vd_aux and vda_next for sanity. Delete "end". Correct overflow
444 (process_version_sections <SHT_GNU_verneed>): Correct overflow
445 check. Don't report invalid vna_next on overflow. Do report
446 invalid vna_next on size less than aux info.
448 2017-08-23 Alan Modra <amodra@gmail.com>
451 * readelf.c (process_version_sections <SHT_GNU_verneed>): Check
452 for invalid vn_next field before adding to idx. Use unsigned
453 long for index vars. Move index checks.
454 <SHT_GNU_verdef>: Likewise for vd_next.
456 2017-08-17 Nick Clifton <nickc@redhat.com>
458 * testsuite/binutils-all/note-3-64.s: New test. Checks assembly
459 and decoding of version2 GNU build attribute notes.
460 * testsuite/binutils-all/note-3-32.s: New test. 32-bit version of
462 * testsuite/binutils-all/note-3-64.d: New test driver.
463 * testsuite/binutils-all/note-3-32.d: New test driver.
464 * testsuite/binutils-all/objcopy.exp: Run the new test.
465 * readelf.c (is_64bit_abs_reloc): Add R_SPARC_64.
467 2017-08-14 Gustavo Romero <gromero@linux.vnet.ibm.com>
469 * readelf.c (get_note_type): Handle PPC note types available
472 2017-08-12 Alan Modra <amodra@gmail.com>
474 * readelf.c (process_note): Qualify NT_GNU_BUILD_ATTRIBUTE notes
477 2017-08-08 Nick Clifton <nickc@redhat.com>
480 * prdbg.c (pr_int_type): Increase size of local string buffer.
481 (pr_float_type): Likewise.
482 (pr_bool_type): Likewise.
484 2017-08-02 Nick Clifton <nickc@redhat.com>
487 * arsup.c (ar_addmod): Add plugin support for the MRI ADDMOD
490 2017-08-02 Nick Clifton <nickc@redhat.com>
492 * testsuite/binutils-all/objdump.exp (cpus_expected): Add am33-2.
494 2017-08-02 Alan Modra <amodra@gmail.com>
496 * readelf.c (is_32bit_abs_reloc): Add R_IA64_SECREL32MSB and
498 (is_64bit_abs_reloc): Add R_IA64_DIR64MSB.
499 (is_64bit_pcrel_reloc): Add R_IA64_PCREL64MSB.
501 2017-08-01 Nick Clifton <nickc@redhat.com>
503 * po/sv.po: Updated Swedish translation.
505 2017-07-31 Marty Plummer <ntzrmtthihu777@gmail.com>
508 * winduni.c (codepages): Use cp1252 for codepage 0.
510 2017-07-25 Nick Clifton <nickc@redhat.com>
513 * readelf.c (dump_section_as_strings): Do not fail if the section
515 (dump_section_as_bytes): Likewise.
517 2017-07-24 Nick Clifton <nickc@redhat.com>
520 * rddbg.c (read_symbol_stabs_debugging_info): Check for an empty
521 string whilst concatenating symbol names.
523 2017-07-21 Nick Clifton <nickc@redhat.com>
525 * po/fr.po: Updated French translation.
527 2017-07-21 Simon Marchi <simon.marchi@ericsson.com>
529 * dwarf.c (last_pointer_size, warned_about_missing_comp_units):
531 (load_debug_info): Remove assignments to those two variables.
533 2017-07-21 Alexandre Oliva <aoliva@redhat.com>
535 * dwarf.c (struct State_Machine_Registers): Add view field.
536 (reset_state_machine): Reset view.
537 (process_extended_line_op): Reset view when appropriate.
538 (display_debug_lines_raw): Increment or reset view when appropriate.
539 Print nonzero views. Support print view resets, disabled by default.
540 (display_debug_lines_decoded): Likewise. Disambiguate op_code tests,
541 enabling printing of end_sequence.
542 * testsuite/binutils-all/dw2-1.W: Add nonzero views.
543 * testsuite/binutils-all/dw2-3.W: Likewise.
544 * testsuite/binutils-all/dw2-3gabi.W: Likewise.
545 * testsuite/binutils-all/dw5.W: Add end sequence lines.
546 * testsuite/binutils-all/i386/compressed-1a.d: Add nonzero views.
547 * testsuite/binutils-all/libdw2-compressedgabi.out: Likewise.
548 * testsuite/binutils-all/objdump.W: Likewise.
549 * testsuite/binutils-all/objdump.WL: Add end sequence lines.
550 * testsuite/binutils-all/x86-64/compressed-1a.d: Add nonzero views.
552 2017-07-19 Tristan Gingold <gingold@adacore.com>
554 * nm.c (show_stats): Remove variable.
555 (long_options): Remove --stats option.
556 (main): Remove handling of --stats.
558 2017-07-18 Nick Clifton <nickc@redhat.com>
561 * coffgrok.c: Fix spelling typos.
562 * readelf.c: Likewise.
564 * testsuite/binutils-all/objcopy.exp: Likewise.
566 2017-07-18 Nick Clifton <nickc@redhat.com>
568 * po/sv.po: Updated Swedish translation.
570 2017-07-18 Hans-Peter Nilsson <hp@bitrange.com>
572 * dwarf.c (display_debug_names): Initialize hash_prev.
574 2017-07-17 Nick Clifton <nickc@redhat.com>
577 * ar.c (main): Skip check for no files on the command line when
580 2017-07-13 H.J. Lu <hongjiu.lu@intel.com>
582 * testsuite/binutils-all/objdump.exp: Always delete $testarchive
585 2017-07-12 Alan Modra <amodra@gmail.com>
587 * po/bg.po: Update from translationproject.org/latest/binutils/.
588 * po/ca.po: Likewise.
589 * po/da.po: Likewise.
590 * po/es.po: Likewise.
591 * po/fi.po: Likewise.
592 * po/fr.po: Likewise.
593 * po/hr.po: Likewise.
594 * po/id.po: Likewise.
595 * po/it.po: Likewise.
596 * po/ja.po: Likewise.
597 * po/ro.po: Likewise.
598 * po/ru.po: Likewise.
599 * po/sk.po: Likewise.
600 * po/sr.po: Likewise.
601 * po/sv.po: Likewise.
602 * po/tr.po: Likewise.
603 * po/uk.po: Likewise.
604 * po/vi.po: Likewise.
605 * po/zh_CN.po: Likewise.
606 * po/zh_TW.po: Likewise.
608 2017-07-12 Nick Clifton <nickc@redhat.com>
610 Fix compile time warnings using gcc 7.1.1.
611 * dwarf.c (dwarf_vmatoa_1): Do not pass a NULL string pointer to
613 * srconv.c (walk_tree_type): Initialise the spare field of the
616 2017-07-11 Andreas Schwab <schwab@suse.de>
618 * readelf.c (process_note): Print newline after description data
620 (print_core_note): Print newline if nothing was printed in wide
623 2017-07-09 Rafael Fontenelle <rafaelff@gnome.org>
625 * dwarf.c (display_formatted_table): Fix error message typo.
627 2017-07-07 John Baldwin <jhb@FreeBSD.org>
629 * readelf.c (get_freebsd_elfcore_note_type): Handle
630 NT_FREEBSD_PTLWPINFO.
632 2017-07-05 H.J. Lu <hongjiu.lu@intel.com>
634 * dwarf.c (display_debug_names): Replace index with xindex.
636 2017-07-04 Tristan Gingold <gingold@adacore.com>
638 * configure: Regenerate.
640 2017-07-04 Tristan Gingold <gingold@adacore.com>
642 * NEWS: Add marker for 2.29.
644 2017-07-03 Tristan Gingold <gingold@adacore.com>
646 * po/binutils.pot: Regenerate.
648 2017-07-03 Alan Modra <amodra@gmail.com>
650 * strings.c (filename_and_size_t): Delete.
651 (strings_a_section): Don't check section size against file size.
652 Use bdf_malloc_and_get_section. Report an error on failures.
653 Replace arg param with filename and got_a_section param.
654 (got_a_section): Move to..
655 (strings_object_file): ..an auto var here. Iterate over sections
656 rather than calling bfd_map_over_sections. Adjust strings_a_section
659 2017-07-02 Jan Kratochvil <jan.kratochvil@redhat.com>
661 * dwarf.c: Include assert.h.
662 (MAX, MIN, get_IDX_name, display_debug_names): New.
663 (debug_displays): Add .debug_names.
664 * dwarf.h: (enum dwarf_section_display_enum): Add debug_names.
665 * readelf.c (process_section_headers): Add ".debug_names".
667 2017-07-01 Alan Modra <amodra@gmail.com>
670 * objdump.c (strtab): Make var a bfd_byte*.
671 (disassemble_section): Don't limit malloc size. Instead, use
672 bfd_malloc_and_get_section.
673 (read_section_stabs): Use bfd_malloc_and_get_section. Return
675 (find_stabs_section): Remove now unnecessary cast.
676 * objcopy.c (copy_object): Use bfd_malloc_and_get_section. Free
677 contents on error return.
678 * nlmconv.c (copy_sections): Use bfd_malloc_and_get_section.
680 2017-06-30 Nick Clifton <nickc@redhat.com>
683 * objdump.c (disassemble_section): Move check for an overlarge
684 section to just before the allocation of memory. Do not check
685 section size against file size, but instead use an arbitrary 2Gb
686 limit. Issue a warning message if the section is too big.
688 2017-06-30 Maciej W. Rozycki <macro@imgtec.com>
690 * NEWS: Mention microMIPS XPA support.
692 2017-06-30 Maciej W. Rozycki <macro@imgtec.com>
694 * NEWS: Mention microMIPS Release 5 ISA support.
696 2017-06-30 Maciej W. Rozycki <macro@imgtec.com>
698 * testsuite/binutils-all/mips/mips-xpa-virt-1.d: New test.
699 * testsuite/binutils-all/mips/mips-xpa-virt-2.d: New test.
700 * testsuite/binutils-all/mips/mips-xpa-virt-3.d: New test.
701 * testsuite/binutils-all/mips/mips-xpa-virt-4.d: New test.
702 * testsuite/binutils-all/mips/mips-xpa-virt.s: New test source.
703 * testsuite/binutils-all/mips/mips.exp: Run the new tests.
705 2017-06-29 Anton Kolesov <Anton.Kolesov@synopsys.com>
707 * testsuite/binutils-all/arc/double_store.s: New file.
708 * testsuite/binutils-all/arc/objdump.exp: Tests for disassembler
710 (do_objfile): New function.
711 (check_assembly): Likewise.
713 2017-06-29 Andreas Arnez <arnez@linux.vnet.ibm.com>
715 * readelf.c (get_note_type): Add NT_S390_GS_CB and NT_S390_GS_BC.
717 2017-06-28 H.J. Lu <hongjiu.lu@intel.com>
719 * objdump.c (dump_relocs_in_section): Cast to ufile_ptr when
720 comparing against bfd_get_file_size return.
722 2017-06-28 Nick Clifton <nickc@redhat.com>
724 * objcopy.c (merge_gnu_build_notes): Add support for version 2 notes.
725 * readelf.c (print_gnu_build_attribute_name): Likewise.
727 2017-06-28 Maciej W. Rozycki <macro@imgtec.com>
728 Matthew Fortune <matthew.fortune@imgtec.com>
730 * readelf.c (get_machine_flags) <E_MIPS_MACH_IAMR2>: New case.
731 (print_mips_isa_ext) <AFL_EXT_INTERAPTIV_MR2>: Likewise.
732 * NEWS: Mention Imagination interAptiv MR2 processor support.
734 2017-06-26 Nick Clifton <nickc@redhat.com>
737 * objdump.c (disassemble_section): Skip any section that is bigger
738 than the entire file.
740 2017-06-26 Nick Clifton <nickc@redhat.com>
743 * bucomm.c (get_file_size): Explicitly warn if the file is a
746 2017-06-24 Thomas Preud'homme <thomas.preudhomme@arm.com>
748 * readelf.c (arm_attr_tag_CPU_arch): Fill value for ARMv8-R.
750 2017-06-23 Nick Clifton <nickc@redhat.com>
753 * strings.c (strings_file): Warn about attempts to run strings on
756 2017-06-22 H.J. Lu <hongjiu.lu@intel.com>
758 * readelf.c (decode_x86_feature): Decode
759 GNU_PROPERTY_X86_FEATURE_1_SHSTK.
760 * testsuite/binutils-all/i386/shstk.d: New file.
761 * testsuite/binutils-all/i386/shstk.s: Likewise.
762 * testsuite/binutils-all/x86-64/shstk-x32.d: Likewise.
763 * testsuite/binutils-all/x86-64/shstk.d: Likewise.
764 * testsuite/binutils-all/x86-64/shstk.s: Likewise.
766 2017-06-22 H.J. Lu <hongjiu.lu@intel.com>
768 * readelf.c (decode_x86_feature): New.
769 (print_gnu_property_note): Call decode_x86_feature on
770 GNU_PROPERTY_X86_FEATURE_1_AND.
771 * testsuite/binutils-all/i386/empty.d: New file.
772 * testsuite/binutils-all/i386/empty.s: Likewise.
773 * testsuite/binutils-all/i386/ibt.d: Likewise.
774 * testsuite/binutils-all/i386/ibt.s: Likewise.
775 * testsuite/binutils-all/x86-64/empty-x32.d: Likewise.
776 * testsuite/binutils-all/x86-64/empty.d: Likewise.
777 * testsuite/binutils-all/x86-64/empty.s: Likewise.
778 * testsuite/binutils-all/x86-64/ibt-x32.d: Likewise.
779 * testsuite/binutils-all/x86-64/ibt.d: Likewise.
780 * testsuite/binutils-all/x86-64/ibt.s: Likewise.
782 2017-06-21 H.J. Lu <hongjiu.lu@intel.com>
784 * dwarf.c (READ_ULEB): Use DWARF_VMA_FMT to report error.
785 (READ_SLEB): Likewise.
787 2017-06-21 Nick Clifton <nickc@redhat.com>
790 * dwarf.c (LEB): Rename to SKIP_ULEB and READ_ULEB. Add check for
791 reading a value that is too big for the containing variable.
792 (SLEB): Rename to SKIP_SLEB and READ_SLEB. Add similar check.
793 Replace uses of LEB and SLEB with appropriate new macro.
794 (display_debug_frames): Use an unsigned int for the 'reg'
795 variable. Use a signed long for the 'l' variable.
797 2017-06-20 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
799 * readelf.c (get_s390_segment_type): Add support for the new
800 segment type PT_S390_PGSTE.
801 (get_segment_type): Call get_s390_segment_type.
803 2017-06-19 Nick Clifton <nickc@redhat.com>
806 * objdump.c (disassemble_bytes): Check that there is sufficient
807 data available before attempting to display it.
809 2017-06-06 Simon Marchi <simon.marchi@ericsson.com>
811 * sysinfo.y: Free memory allocated by token NAME.
813 2017-05-30 Anton Kolesov <anton.kolesov@synopsys.com>
815 * doc/binutils.texi: Document new cpu=... disassembler options for ARC.
817 2017-05-30 H.J. Lu <hongjiu.lu@intel.com>
820 * objdump.c (dump_relocs_in_section): Replace get_file_size
821 with bfd_get_file_size to get archive element size.
822 * testsuite/binutils-all/objdump.exp (test_objdump_f): New
824 (test_objdump_h): Likewise.
825 (test_objdump_t): Likewise.
826 (test_objdump_r): Likewise.
827 (test_objdump_s): Likewise.
828 Add objdump tests on archive.
830 2017-05-24 Yao Qi <yao.qi@linaro.org>
832 * objdump.c (disassemble_data): Caller update.
834 2017-05-19 Jose E. Marchesi <jose.marchesi@oracle.com>
836 * objcopy.c (merge_gnu_build_notes): Remove workaround that
837 prevented deleting relocations in duplicated notes in mips64 and
840 2017-05-19 Maciej W. Rozycki <macro@imgtec.com>
842 * testsuite/binutils-all/mips/mips-note-2.d: New test.
843 * testsuite/binutils-all/mips/mips-note-2r.d: New test.
844 * testsuite/binutils-all/mips/mips-note-2-n32.d: New test.
845 * testsuite/binutils-all/mips/mips-note-2-n64.d: New test.
846 * testsuite/binutils-all/mips/mips-note-2r-n32.d: New test.
847 * testsuite/binutils-all/mips/mips-note-2r-n64.d: New test.
848 * testsuite/binutils-all/mips/mips.exp: Define `has_newabi'.
851 2017-05-19 Maciej W. Rozycki <macro@imgtec.com>
853 * testsuite/lib/utils-lib.exp (run_dump_test): Handle the `dump'
856 2017-05-19 Jose E. Marchesi <jose.marchesi@oracle.com>
858 * NEWS: Mention the SPARC M8 support.
860 2017-05-19 Maciej W. Rozycki <macro@imgtec.com>
862 * testsuite/binutils-all/mips/mips.exp: Bail out right away if
865 2017-05-18 Alan Modra <amodra@gmail.com>
867 * strings.c: Don't compare boolean values against TRUE or FALSE.
869 2017-05-15 Jeff Law <law@redhat.com>
871 * readelf.c (display_arc_attribute): Avoid implicit fallthru.
873 2017-05-15 Maciej W. Rozycki <macro@imgtec.com>
875 * testsuite/binutils-all/mips/mips16-undecoded.d: Add `-mips3'
877 * testsuite/binutils-all/mips/mips16e2-undecoded.d: New test.
878 * testsuite/binutils-all/mips/mips16e2-extend-insn.d: New test.
879 * testsuite/binutils-all/mips/mips16-undecoded.s: Remove
881 * testsuite/binutils-all/mips/mips.exp: Run the new tests.
883 2017-05-15 Maciej W. Rozycki <macro@imgtec.com>
885 * readelf.c (print_mips_ases): Handle MIPS16e2 ASE.
886 * NEWS: Mention MIPS16e2 ASE support.
888 2017-05-12 Maciej W. Rozycki <macro@imgtec.com>
890 * testsuite/binutils-all/mips/mips16-extend-insn.d: Adjust BREAK
891 and SDBBP disassembly.
893 2017-05-10 Maciej W. Rozycki <macro@imgtec.com>
895 * testsuite/binutils-all/mips/mips.exp: Define `tempfile' and
896 `copyfile' variables.
898 2017-05-10 Claudiu Zissulescu <claziss@synopsys.com>
900 * readelf.c (decode_ARC_machine_flags): Recognize OSABI v4.
901 (get_arc_section_type_name): New function.
902 (get_section_type_name): Use the above function.
903 (display_arc_attribute): New function.
904 (process_arc_specific): Likewise.
905 (process_arch_specific): Handle ARC specific information.
907 2017-05-09 Kaz Kojima <kkojima@rr.iij4u.or.jp>
909 * MAINTAINERS (SH): Remove myself as SH maintainer.
911 2017-05-02 H.J. Lu <hongjiu.lu@intel.com>
913 * objcopy.c (merge_gnu_build_notes): Cast relcount to unsigned
914 long when comparing with sec->reloc_count.
916 2017-05-02 Nick Clifton <nickc@redhat.com>
918 * objcopy.c (merge_gnu_build_notes): Disable merge if there are
919 more internal relocs than external relocs.
921 2017-05-02 Maciej W. Rozycki <macro@imgtec.com>
923 * testsuite/binutils-all/mips/mips16-undecoded.d: Adjust the
924 disassembly of PC-relative LA and LW synthetic instructions.
926 2017-05-02 Nick Clifton <nickc@redhat.com>
929 * objdump.c (dump_relocs_in_section): Check for an excessive
930 number of relocs before attempting to dump them.
932 2017-05-01 Alan Modra <amodra@gmail.com>
934 * objcopy.c (merge_gnu_build_notes): Correct code deleting
937 2017-04-28 Nick Clifton <nickc@redhat.com>
940 * readelf.c (print_gnu_build_attribute_name): Allow for an empty
943 2017-04-28 Nick Clifton <nickc@redhat.com>
946 * readelf.c (process_version_sections): Check for underflow when
947 computing the start address of the auxillary version data.
949 2017-04-28 Nick Clifton <nickc@redhat.com>
952 * dwarf.c (process_extended_line_op): Do not assume that the
953 string extracted from the section is NUL terminated.
954 (fetch_indirect_string): If the string retrieved from the section
955 is not NUL terminated, return an error message.
956 (fetch_indirect_line_string): Likewise.
957 (fetch_indexed_string): Likewise.
959 2017-04-26 Nick Clifton <nickc@redhat.com>
962 * bucomm.c (get_file_size): Return -1 if file_name is NULL.
963 * ar.c (main): Fail with usage() invocation if no file names are
966 2017-04-26 Nick Clifton <nickc@redhat.com>
968 * readelf.c (process_section_headers): Warn about overlarge
970 (print_gnu_build_attribute_name): Print the number of unrecognised
971 note types. Fix formatting in the presence of errors.
972 (testsuite/binutils-all/note-2-32.s): Fix encoding of numeric notes.
973 (testsuite/binutils-all/note-2-64.s): Likewise.
975 2017-04-26 Maciej W. Rozycki <macro@imgtec.com>
977 * readelf.c (process_mips_specific): Add static GOT support.
979 2017-04-25 Maciej W. Rozycki <macro@imgtec.com>
981 * readelf.c (process_mips_specific): Remove error reporting from
984 2017-04-25 Maciej W. Rozycki <macro@imgtec.com>
986 * readelf.c (process_mips_specific): Remove null GOT data check.
988 2017-04-25 Maciej W. Rozycki <macro@imgtec.com>
990 * testsuite/binutils-all/mips/mips16-alias.d: New test.
991 * testsuite/binutils-all/mips/mips16-noalias.d: New test.
992 * testsuite/binutils-all/mips/mips16-alias.s: New test source.
993 * testsuite/binutils-all/mips/mips.exp: Run the new tests.
995 2017-04-23 Alan Modra <amodra@gmail.com>
998 * ar.c (main): Check -a, -b, -i and -N args are given.
1000 2017-04-23 Alan Modra <amodra@gmail.com>
1003 * ar.c (main): Check that an archive file is given after options.
1005 2017-04-23 Alan Modra <amodra@gmail.com>
1008 * objdump.c (disassemble_section): Check bfd_get_section_contents
1011 2017-04-23 Alan Modra <amodra@gmail.com>
1014 * dwarf.c (display_debug_lines_decoded): Don't segfault on NULL
1017 2017-04-21 Nick Clifton <nickc@redhat.com>
1020 * readelf.c (print_gnu_build_attribute_name): Check for an
1021 overlarge name field.
1023 2017-04-13 Nick Clifton <nickc@redhat.com>
1026 * readelf.c (process_dynamic_section): Detect over large section
1027 offsets in the DT_SYMTAB entry.
1029 2017-04-13 Nick Clifton <nickc@redhat.com>
1032 * readelf.c (process_mips_specific): Catch an unfeasible memory
1033 allocation before it happens and print a suitable error message.
1035 2017-04-13 Nick Clifton <nickc@redhat.com>
1037 * objcopy.c: Add --no-merge-notes option to disable note merging.
1038 Add --[no-]merge-notes option to strip, and enable it by default.
1039 (num_bytes): New function.
1040 (merge_gnu_build_notes): Add code to merge stack size notes.
1041 * binutils.texi: Update strip and objcopy documentation.
1042 * readelf.c (print_gnu_build_attribute_name): Use defined
1043 constants for note types.
1045 2017-04-10 John Delsignor <john.delsignore@roguewave.com>
1048 * dwarf.c (display_gdb_index): Correct test for a corrupt address
1051 2017-04-05 Jiong Wang <jiong.wang@arm.com>
1053 * objcopy.c (struct redefine_node): Delete the field "next".
1054 (redefine_sym_list): Deleted.
1055 (redefine_specific_htab): New hash table.
1056 (redefine_specific_reverse_htab): Likewise.
1057 (eq_string_redefnode): New function.
1058 (htab_hash_redefnode): Likewise.
1059 (create_symbol2redef_htab): Likewise.
1060 (add_specific_symbol_node): Likewise.
1061 (create_symbol_htabs): Create redefine_specific_htab and
1062 redefine_specific_reverse_htab.
1063 (lookup_sym_redefinition): Use hash table instead of list.
1064 (redefine_list_append): Likewise, and rename to add_redefine_and_check.
1065 (copy_main): Use redefine_specific_htab instead of redefine_sym_list.
1068 2017-04-04 H.J. Lu <hongjiu.lu@intel.com>
1070 * NEWS: Mention support for ELF SHF_GNU_MBIND and
1072 * readelf.c (get_segment_type): Handle PT_GNU_MBIND_XXX.
1073 (get_elf_section_flags): Handle SHF_GNU_MBIND.
1074 (process_section_headers): Likewise.
1075 * testsuite/binutils-all/mbind1.s: New file.
1076 * testsuite/binutils-all/objcopy.exp: Run readelf test on
1079 2017-04-03 Nick Clifton <nickc@redhat.com>
1082 * readelf.c (get_program_headers): Check for there being too many
1083 program headers before attempting to allocate space for them.
1085 2017-04-03 Nick Clifton <nickc@redhat.com>
1088 * readelf.c (process_mips_specific): Check for an out of range GOT
1089 entry before reading the module pointer.
1091 2017-04-03 Nick Clifton <nickc@redhat.com>
1094 * readelf.c (get_unwind_section_word): Fix snafu checking for
1095 invalid word offsets in ARM unwind information.
1097 2017-03-31 Pip Cet <pipcet@gmail.com>
1099 * NEWS: Use "WebAssembly" consistently.
1100 * testsuite/binutils-all/wasm32/wasm32.exp: Fix copyright notice.
1102 2017-03-30 Pip Cet <pipcet@gmail.com>
1104 * readelf.c: Add support for wasm32 ELF format WebAssembly files.
1105 (guess_is_rela): Likewise.
1106 (dump_relocations): Likewise.
1107 (is_32bit_abs_reloc): Likewise.
1108 (is_none_reloc_): Likewise.
1109 * NEWS: Mention the new support.
1110 * testsuite/lib/binutils-common.exp (is_elf_format): Mark wasm32
1112 (supports_gnu_unique): Mark wasm32 as supporting STB_GNU_UNIQUE.
1113 * testsuite/binutils-all/nm.exp: Mark wasm32 as requiring .size annotations.
1114 * testsuite/binutils-all/wasm32: New directory.
1115 * testsuite/binutils-all/wasm32/create-wasm.d: New file.
1116 * testsuite/binutils-all/wasm32/create-wasm.s: Likewise.
1117 * testsuite/binutils-all/wasm32/custom-section.d: Likewise.
1118 * testsuite/binutils-all/wasm32/custom-section.s: Likewise.
1119 * testsuite/binutils-all/wasm32/invalid-wasm-1.d: Likewise.
1120 * testsuite/binutils-all/wasm32/invalid-wasm-1.s: Likewise.
1121 * testsuite/binutils-all/wasm32/long-sections.d: Likewise.
1122 * testsuite/binutils-all/wasm32/long-sections.s: Likewise.
1123 * testsuite/binutils-all/wasm32/parse-wasm.d: Likewise.
1124 * testsuite/binutils-all/wasm32/parse-wasm.s: Likewise.
1125 * testsuite/binutils-all/wasm32/parse-wasm-2.d: Likewise.
1126 * testsuite/binutils-all/wasm32/parse-wasm-2.s: Likewise.
1127 * testsuite/binutils-all/wasm32/prepared-section.d: Likewise.
1128 * testsuite/binutils-all/wasm32/prepared-section.s: Likewise.
1129 * testsuite/binutils-all/wasm32/wasm32.exp: New file, run tests.
1131 2017-03-29 Alan Modra <amodra@gmail.com>
1133 * doc/binutils.texi (objdump): Document PowerPC -M options.
1135 2017-03-21 Andi Kleen <ak@linux.intel.com>
1137 * objdump.c (unwind_inlines): Add.
1138 (option_values): Add OPTION_INLINES.
1139 (show_line): Unwind inlines if requested.
1140 (main): Parse OPTION_INLINES.
1141 (usage): Document --inlines.
1142 * doc/binutils.texi: Document --inlines.
1145 2017-03-21 Nick Clifton <nickc@redhat.com>
1147 * readelf.c (print_gnu_build_attribute_name): Allow stack
1148 protection notes to contain numeric values. Use a colon rather
1149 than a space to separate a string name from its values. Decode
1150 the numeric value of a stack protection note.
1151 * objcopy.c (merge_gnu_build_notes): Allow version notes to
1152 contain extra text after the protocol version number.
1154 2017-03-20 Mark Wielaard <mark@klomp.org>
1156 * readelf.c (process_program_headers): Move dynamic_addr check
1157 after .dynamic section cross check.
1159 2017-03-17 Nick Clifton <nickc@redhat.com>
1161 * readelf.c (print_gnu_build_attribute_name): Fix off by one error
1162 printing the value for a build note with an ascii name.
1164 2017-03-16 Nick Clifton <nickc@redhat.com>
1166 * readelf.c (print_gnu_build_attribute_name): Add support for
1167 GNU_BUILD_ATTRIBUTE_SHORT_ENUM.
1169 2017-03-14 Nick Clifton <nickc@redhat.com>
1171 * readelf.c (print_gnu_build_attribute_description): Move symbol
1173 (print_symbol_for_build_attribute): New function. ...here.
1174 Add to find the best symbol to associate with an OPEN note.
1175 Add code to cache the symbol table and string table, so that they
1176 are not loaded every time a note is displayed.
1177 * testsuite/binutils-all/note-2-32.s: Add a function symbol.
1178 * testsuite/binutils-all/note-2-64.s: Likewise.
1179 * testsuite/binutils-all/note-2-32.d: Update expected note output.
1180 * testsuite/binutils-all/note-2-64.d: Likewise.
1182 2017-03-13 Alan Modra <amodra@gmail.com>
1183 Taeung Song <treeze.taeung@gmail.com>
1185 * objdump.c (update_source_path): Add abfd param. Add struct
1186 stat var. Pass to try_print_file_open. Warn if source is more
1188 (try_print_file_open, slurp_file): Add struct stat param to
1190 (show_line): Call update_source_path with bfd.
1192 2017-03-10 Chia-Hao Lo <fcamel@gmail.com>
1195 * objdump.c (main): Set do_wide with --wide.
1197 2017-03-10 Nick Clifton <nickc@redhat.com>
1199 * readelf.c (get_machine_name): Rearrange switch table in order of
1200 increasing machine number. Add missing entries.
1202 2017-03-08 H.J. Lu <hongjiu.lu@intel.com>
1205 * readelf.c (decode_x86_isa): Change argument to unsigned int.
1206 (print_gnu_property_note): Retrieve property type and datasz as
1207 4-byte integer. Consolidate property datasz check. Check
1208 GNU_PROPERTY_LOPROC and GNU_PROPERTY_LOUSER.
1209 * testsuite/binutils-all/i386/pr21231a.d: New file.
1210 * testsuite/binutils-all/i386/pr21231a.s: Likewise.
1211 * testsuite/binutils-all/i386/pr21231b.d: Likewise.
1212 * testsuite/binutils-all/i386/pr21231b.s: Likewise.
1213 * testsuite/binutils-all/x86-64/pr21231a.d: Likewise.
1214 * testsuite/binutils-all/x86-64/pr21231a.s: Likewise.
1215 * testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
1216 * testsuite/binutils-all/x86-64/pr21231b.s: Likewise.
1218 2017-03-06 Nick Clifton <nickc@redhat.com>
1220 * readelf.c (print_gnu_build_attribute_name): Read byte values
1221 from the name string as unsigned bytes.
1222 (process_notes_at): Use memcpy to copy an unterminated name
1225 2017-03-06 Sam Thursfield <sam.thursfield@codethink.co.uk>
1227 * configure.ac (AC_CHECK_DECLS): Add asprintf.
1228 * config.in: Regenerate.
1229 * configure: Regenerate.
1231 2017-03-02 Nick Clifton <nickc@redhat.com>
1233 * readelf.c (print_gnu_build_attribute_description): Use global
1234 symbols for OPEN attributes if at all possible.
1235 * objcopy.c (is_merged_note_section): Support build note sections
1236 without the SHF_GNU_BUILD_NOTE section flag set.
1238 2017-03-02 Jan Kratochvil <jan.kratochvil@redhat.com>
1240 * dwarf.c (debug_displays_assert): New static assertion.
1242 2017-03-02 Jan Kratochvil <jan.kratochvil@redhat.com>
1244 * dwarf.h (enum dwarf_section_display_enum): Add loclists and rnglists.
1246 2017-03-01 Nick Clifton <nickc@redhat.com>
1248 * readelf.c (get_note_type): Add support for GNU_BUILD_NOTEs.
1249 (get_gnu_elf_note_type): Add support for GNU_PROPERTY_NOTEs.
1250 (decode_x86_isa): New function.
1251 (print_gnu_property_note): New function.
1252 (print_gnu_note): Handle GNU_PROPERTY_NOTEs.
1253 (print_gnu_build_attribute_description): New function.
1254 (print_gnu_build_attribute_name): New function.
1255 (process_note): Add support for GNU_BUILD_NOTEs.
1256 * objcopy.c (--merge-notes): New command line option.
1257 (copy_options): Add merge-notes.
1258 (copy_usage): Likewise.
1259 (is_merge_note_section): New function.
1260 (merge_gnu_build_notes): New function.
1261 (copy_object): Merge note sections if asked to do so.
1262 (skip_section): Add skip_copy parameter. Add support for skipping
1263 merged note sections.
1264 (copy_relocations_in_section): Update call to skip_section.
1265 (copy_section): Likewise.
1266 (copy_main): Add support for merge-notes option.
1267 * doc/binutils.texi: Document the new option to objcopy.
1268 * NEWS: Mention the new feature.
1269 * testsuite/binutils-all/note-2-32.d: New test. Checks note
1270 merging on 32-bit targets.
1271 * testsuite/binutils-all/note-2-32.s: New test source file.
1272 * testsuite/binutils-all/note-2-64.d: New test. Like note-2-32.d
1273 but for 64-bit targets.
1274 * testsuite/binutils-all/note-2-64.s: New test source file.
1275 * testsuite/binutils-all/objcopy.exp: Run the new test.
1277 2017-02-28 Peter Bergner <bergner@vnet.ibm.com>
1279 * objdump.c (main): Use remove_whitespace_and_extra_commas.
1281 2017-02-27 Jan Kratochvil <jan.kratochvil@redhat.com>
1283 Fix compilation with GCC 4.4.7.
1284 * dwarf.c (display_loclists_list, display_debug_rnglists_list):
1285 Initialize begin and end.
1287 2017-02-25 Alan Modra <amodra@gmail.com>
1289 * testsuite/binutils-all/dw5.S: Replace .string with .asciz.
1290 Support hpux .comm variant.
1291 * testsuite/binutils-all/readelf.exp: Define HPUX when assembling
1292 dw5 test for hppa64-hpux.
1294 2017-02-24 Nick Clifton <nickc@redhat.com>
1296 * readelf.c (show_name, do_dynamic, do_syms, do_dyn_syms,
1297 (do_reloc, do_sections, do_section_groups, do_section_details,
1298 (do_segments, do_unwind, do_using_dynamic, do_header, do_dump,
1299 (do_version, do_histogram, do_debugging, do_arch, do_notes,
1300 (do_archive_index, is_32bit_elf, decompress_dumps): Use
1302 (parse_args): Treat the do_* variables as booleans.
1303 (print_vma): Return an unsigned int.
1304 (print_symbol): Change width parameter to signed int.
1305 (is_ia64_vms): Change return type to bfd_boolean.
1306 (guess_is_rela): Likewise.
1307 (slurp_rela_relocs): Likewise.
1308 (slurp_rel_relocs): Likewise.
1309 (dump_relocations): Likewise.
1310 (process_file_header): Likewise.
1311 (get_program_headers): Likewise.
1312 (process_program_headers): Likewise.
1313 (process_section_headers): Likewise.
1314 (process_section_groups): Likewise.
1315 (dump_ia64_vms_dynamic_fixups): Likewise.
1316 (dump_ia64_vms_dynamic_relocs): Likewise.
1317 (process_ia64_vms_dynamic_relocs): Likewise.
1318 (process_relocs): Likewise.
1319 (dump_ia64_unwind): Likewise.
1320 (ia64_process_unwind): Likewise.
1321 (dump_hppa_unwind): Likewise.
1322 (slurp_hppa_unwind_table): Likewise.
1323 (hppa_process_unwind): Likewise.
1324 (decode_arm_unwind_bytecode): Likewise.
1325 (decode_tic6x_unwind_bytecode): Likewise.
1326 (decode_arm_unwind): Likewise.
1327 (dump_arm_unwind): Likewise.
1328 (arm_process_unwind): Likewise.
1329 (process_unwind): Likewise.
1330 (get_32bit_dynamic_section): Likewise.
1331 (get_64bit_dynamic_section): Likewise.
1332 (process_dynamic_section): Likewise.
1333 (process_version_sections): Likewise.
1334 (process_symbol_table): Likewise.
1335 (process_syminfo): Likewise.
1336 (apply_relocations): Likewise.
1337 (disassemble_section): Likewise.
1338 (dump_section_as_strings): Likewise.
1339 (dump_section_as_bytes): Likewise.
1340 (load_specific_debug_section): Likewise.
1341 (load_debug_section): Likewise.
1342 (display_debug_section): Likewise.
1343 (process_section_contents): Likewise.
1344 (process_attributes): Likewise.
1345 (process_nds32_specific): Likewise.
1346 (process_gnu_liblist): Likewise.
1347 (print_core_note): Likewise.
1348 (print_gnu_note): Likewise.
1349 (print_v850_note): Likewise.
1350 (process_netbsd_elf_note): Likewise.
1351 (print_stapsdt_note): Likewise.
1352 (print_ia64_vms_note): Likewise.
1353 (process_note): Likewise.
1354 (process_notes_at): Likewise.
1355 (process_corefile_note_segments): Likewise.
1356 (process_v850_notes): Likewise.
1357 (process_note_sections): Likewise.
1358 (process_notes): Likewise.
1359 (process_arch_specific): Likewise.
1360 (get_file_header): Likewise.
1361 (process_object): Likewise.
1362 (process_archive): Likewise.
1363 (process_file): Likewise.
1364 (section_subset): Make static.
1365 (get_mips_reg_size): Return a signed integer.
1366 (process_object): Reverse the logic of the return value.
1367 (process_archive): Likewise.
1368 (process_file): Likewise.
1369 (process_program_headers): Fix snafu - if the program headers are
1370 not available then this is not a cause to fail.
1371 (process_corefile_note_segments): Likewise.
1373 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
1375 * readelf.c (get_ver_flags): Tidy the formatting of the string
1378 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
1380 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Make
1382 <SHT_GNU_verneed>: Likewise.
1384 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
1386 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Limit
1387 the number of entries processed by the section size. Don't
1388 break out of the loop if `ent.vd_next' is 0.
1390 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1392 * testsuite/binutils-all/dw5.S: New file.
1393 * testsuite/binutils-all/dw5.W: New file.
1394 * testsuite/binutils-all/readelf.exp (readelf -wiaoRlL): New test.
1396 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1398 * dwarf.c (read_and_display_attr_value): Support DW_FORM_data16.
1400 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1402 * dwarf.c (display_debug_macro): Support DWARF-5. Rename
1405 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1407 * dwarf.c (decode_location_expression): Support DW_OP_implicit_pointer,
1408 DW_OP_const_type, DW_OP_regval_type, DW_OP_deref_type, DW_OP_convert
1409 and DW_OP_reinterpret.
1410 (read_and_display_attr_value): Support DW_AT_call_value,
1411 DW_AT_call_data_value, DW_AT_call_target and
1412 DW_AT_call_target_clobbered.
1414 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1416 * dwarf.c (fetch_indirect_line_string): New function.
1417 (abbrev_attr): New field implicit_const.
1418 (add_abbrev_attr): New parameter implicit_const.
1419 (process_abbrev_section): Support DW_FORM_implicit_const.
1420 (decode_location_expression): Support DW_OP_entry_value.
1421 (read_and_display_attr_value): Add parameter implicit_const. Support
1422 DW_FORM_line_strp and DW_FORM_implicit_const.
1423 (read_and_display_attr): Add parameter implicit_const.
1424 (process_debug_info): Support line_str and DWARF-5.
1425 (read_debug_line_header): Support DWARF-5.
1426 (display_formatted_table): New function.
1427 (display_debug_lines_raw): New parameter file. Support DWARF-5.
1428 (display_debug_lines_decoded): New parameter fileptr. Support DWARF-5.
1429 (display_debug_lines): Pass file parameter.
1430 (display_debug_macro): Update read_and_display_attr_value caller.
1431 (display_debug_abbrev): Support DW_FORM_implicit_const.
1432 (display_loclists_list): New function.
1433 (display_loc_list): Support .debug_loclists.
1434 (display_debug_ranges_list): New function from display_debug_ranges.
1435 (display_debug_rnglists_list): New function.
1436 (display_debug_ranges): Support .debug_rnglists.
1437 (debug_displays): Add .debug_line_str, .debug_loclists and
1439 * dwarf.h: Include dwarf2.h
1440 (DWARF2_Internal_LineInfo): Add li_offset_size.
1441 (DWARF2_Internal_CompUnit): Add cu_unit_type.
1442 (enum dwarf_section_display_enum): Add line_str.
1443 * readelf.c (process_section_headers): Add rnglists and loclists.
1445 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1447 * dwarf.c (display_block): Add parameter delimiter.
1448 (decode_location_expression): Update display_block callers.
1449 (read_and_display_attr_value): Add parameter delimiter.
1450 (read_and_display_attr, display_debug_macro): Update
1451 read_and_display_attr_value caller.
1453 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
1455 * dwarf.c (display_loc_list): Use dwarf_vma for offset, base_address
1457 (display_loc_list_dwo): Use dwarf_vma for offset.
1458 (display_debug_loc): Use dwarf_vma for offset, base_address.
1459 (struct range_entry, range_entry_compar): Use dwarf_vma for
1461 (display_debug_ranges): Use dwarf_vma for ranges_offset, offset and
1464 2017-02-23 Nick Clifton <nickc@redhat.com>
1466 * readelf.c (display_tag_value): Use an explicit signed type for
1468 (display_gnu_attributes): Use an unsigned integer type for
1470 (display_power_gnu_attribute): Likewise.
1471 (display_s390_gnu_attribute): Likewise.
1472 (display_sparc_hwcaps): Likewise.
1473 (display_sparc_hwcaps2): Likewise.
1474 (display_sparc_gnu_attribute): Likewise.
1475 (display_mips_gnu_attribute): Likewise.
1476 (display_tic6x_attribute): Likewise.
1477 (display_raw_attribute): Likewise.
1478 (process_attributes): Likewise.
1479 (process_arm_specific): Delete redundant function.
1480 (process_power_specific): Likewise.
1481 (process_s390_specific): Likewise.
1482 (process_sparc_specific): Likewise.
1483 (process_tic6x_specific): Likewise.
1484 (process_msp430x_specific): Likewise.
1485 (display_public_gnu_attributes): New function. Displays known
1486 information about an unknown gnu attribute.
1487 (display_generic_attribute): New function. Calls
1488 display_tag_value for non-nul tags.
1489 (process_arch_specific): Call process_attributes even for
1490 architectures not known to specifically support gnu attributes.
1492 2017-02-22 Jan Kratochvil <jan.kratochvil@redhat.com>
1494 * dwarf.c (decode_location_expression): Display also OP.
1496 2017-02-22 Maciej W. Rozycki <macro@imgtec.com>
1498 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Print a
1499 new line between the heading and the first version definition
1502 2017-02-20 Nick Clifton <nickc@redhat.com>
1505 * dwarf.c (cu_tu_indexes_read): Move into...
1506 (load_cu_tu_indexes): ... here. Change the variable into
1507 tri-state. Change the function into boolean, returning
1508 false if the indicies could not be loaded.
1509 (find_cu_tu_set): Return NULL if the indicies could not be
1512 2017-02-17 Nick Clifton <nickc@redhat.com>
1515 * readelf.c (find_section_in_set): Test for invalid section
1518 2017-02-17 Nick Clifton <nickc@redhat.com>
1520 * readelf.c (get_section_type_name): Add decoding of GNU section
1523 2017-02-15 Nick Clifton <nickc@redhat.com>
1525 * MAINTAINERS: (MIPS, MN10300): Move Eric Christopher to Past
1526 Maintainers section.
1528 2017-02-14 Nick Clifton <nickc@redhat.com>
1531 * readelf.c (dump_section_as_strings): Reset the start address if
1532 no decompression is perfromed.
1533 (dump_section_as_bytes): Likewise.
1535 2017-02-14 Nick Clifton <nickc@redhat.com>
1538 * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or
1541 2017-02-14 Nick Clifton <nickc@redhat.com>
1544 * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE
1546 (parse_number): Exit early if passed an empty string.
1548 2017-02-14 Nick Clifton <nickc@redhat.com>
1551 * readelf.c (IN_RANGE): New macro. Tests for an address + offset
1552 being within a given range.
1553 (target_specific_reloc_handling): Use macro to test for underflow
1554 as well as overflow of reloc offset.
1556 2017-02-13 Nick Clifton <nickc@redhat.com>
1559 * nm.c (file_symbol): Add test of string length before testing
1562 2017-02-13 Nick Clifton <nickc@redhat.com>
1565 * readelf.c (dump_section_as_bytes): Handle the case where
1566 uncompress_section_contents returns false.
1567 (dump_section_as_bytes, load_specific_debug_section): Likewise.
1569 2017-02-13 Nick Clifton <nickc@redhat.com>
1572 * readelf.c (get_compression_header): Add size parameter. Check
1573 size against sizeof compression header before attempting to
1575 (process_section_headers): Pass size to get_compression_header.
1576 (dump_section_as_strings): Likewise.
1577 (dump_section_as_bytes): Likewise.
1578 (load_specific_debug_section): Likewise.
1580 2017-02-13 Nick Clifton <nickc@redhat.com>
1583 * readelf.c (process_version_sections): Include size of auxillary
1584 version information when checking for buffer overflow.
1586 2017-02-13 Nick Clifton <nickc@redhat.com>
1589 * readelf.c (process_section_contents): Fix off by one error
1590 reporting un-dumped sections.
1592 2017-02-13 Nick Clifton <nickc@redhat.com>
1595 * readelf.c (target_specific_reloc_handling): Add num_syms
1596 parameter. Check for symbol table overflow before accessing
1597 symbol value. If reloc pointer is NULL, discard all saved state.
1598 (apply_relocations): Pass num_syms to target_specific_reloc_handling.
1599 Call target_specific_reloc_handling with a NULL reloc pointer
1600 after processing all of the relocs.
1602 2017-02-13 Nick Clifton <nickc@redhat.com>
1605 * readelf.c (target_specific_reloc_handling): Add end parameter.
1606 Check for buffer overflow before writing relocated values.
1607 (apply_relocations): Pass end to target_specific_reloc_handling.
1609 2017-01-27 Dilyan Palauzov <dilyan.palauzov@aegee.org>
1610 Nick Clifton <nickc@redhat.com>
1613 * doc/binutils.texi (ar): Extend documentation of the --plugin
1614 option. Include a description of where the plugins should be
1618 2017-01-23 Nick Clifton <nickc@redhat.com>
1620 * MAINTAINERS: Add Bernd to Past Maintainers section.
1621 (SCORE): Remove Mei Ligang as maintainer. Add to Past Maintainers
1624 2017-01-23 Bernd Schmidt <bschmidt@redhat.com>
1626 * MAINTAINERS (BFIN): Remove myself as Blackfin maintainer.
1628 2017-01-20 Andrew Burgess <andrew.burgess@embecosm.com>
1630 * objdump.c (dump_section_header): Extract max section name length
1631 from data parameter, use this when formatting output.
1632 (find_longest_section_name): New function.
1633 (dump_headers): Calculate longest section name when in wide mode,
1634 reformat to unify printing of header line.
1636 2017-01-18 Bernhard Rosenkranzer <bero@lindev.ch>
1639 * arlex.l: Support processing with flex 2.6.3.
1640 * deflex.l: Likewise.
1642 2017-01-17 Dmitry Timoshkov <dmitry@baikal.ru>
1644 * resbin.c: Optional dialog control data immediately follows
1645 the control description without alignment.
1646 * testsuite/binutils-all/windres/controldata.rc: New test.
1648 * testsuite/binutils-all/windres/controldata.rsd: New test.
1650 2017-01-12 Nick Clifton <nickc@redhat.com>
1653 * NEWS: Mention the new feature.
1654 * testsuite/binutils-all/objdump.exp (test_build_id_debuglink):
1655 New proc to test the location of separate debug info files using
1656 the build-id method.
1658 2017-01-10 Nick Clifton <nickc@redhat.com>
1661 * stabs.c (parse_stab_members): Fix thinko checking for g++
1662 version 1 stabs information.
1664 2017-01-09 Nick Clifton <nickc@redhat.com>
1666 * objdump.c (display_file): Add new parameter 'last_file'. If
1667 last_file is true, do not call bfd_close at the end of the
1669 (main): Set the value of the last_file parameter when calling
1672 2017-01-09 Alan Modra <amodra@gmail.com>
1674 * readelf.c (process_section_headers): Correct .rel.dyn/.rela.dyn
1677 2017-01-06 Nick Clifton <nickc@redhat.com>
1679 * MAINTAINERS: Move Paul Brook to the Past Maintainers section.
1681 2017-01-04 Dilan Palauzov <dilyan.palauzov@aegee.org>
1684 * syslex.l (option): Add noyywrap
1687 2017-01-02 Alan Modra <amodra@gmail.com>
1689 Update year range in copyright notice of all files.
1691 For older changes see ChangeLog-2016
1693 Copyright (C) 2017 Free Software Foundation, Inc.
1695 Copying and distribution of this file, with or without modification,
1696 are permitted in any medium without royalty provided the copyright
1697 notice and this notice are preserved.
1703 version-control: never