1 2017-07-07 John Baldwin <jhb@FreeBSD.org>
3 * readelf.c (get_freebsd_elfcore_note_type): Handle
6 2017-07-05 H.J. Lu <hongjiu.lu@intel.com>
8 * dwarf.c (display_debug_names): Replace index with xindex.
10 2017-07-04 Tristan Gingold <gingold@adacore.com>
12 * configure: Regenerate.
14 2017-07-04 Tristan Gingold <gingold@adacore.com>
16 * NEWS: Add marker for 2.29.
18 2017-07-03 Tristan Gingold <gingold@adacore.com>
20 * po/binutils.pot: Regenerate.
22 2017-07-03 Alan Modra <amodra@gmail.com>
24 * strings.c (filename_and_size_t): Delete.
25 (strings_a_section): Don't check section size against file size.
26 Use bdf_malloc_and_get_section. Report an error on failures.
27 Replace arg param with filename and got_a_section param.
28 (got_a_section): Move to..
29 (strings_object_file): ..an auto var here. Iterate over sections
30 rather than calling bfd_map_over_sections. Adjust strings_a_section
33 2017-07-02 Jan Kratochvil <jan.kratochvil@redhat.com>
35 * dwarf.c: Include assert.h.
36 (MAX, MIN, get_IDX_name, display_debug_names): New.
37 (debug_displays): Add .debug_names.
38 * dwarf.h: (enum dwarf_section_display_enum): Add debug_names.
39 * readelf.c (process_section_headers): Add ".debug_names".
41 2017-07-01 Alan Modra <amodra@gmail.com>
44 * objdump.c (strtab): Make var a bfd_byte*.
45 (disassemble_section): Don't limit malloc size. Instead, use
46 bfd_malloc_and_get_section.
47 (read_section_stabs): Use bfd_malloc_and_get_section. Return
49 (find_stabs_section): Remove now unnecessary cast.
50 * objcopy.c (copy_object): Use bfd_malloc_and_get_section. Free
51 contents on error return.
52 * nlmconv.c (copy_sections): Use bfd_malloc_and_get_section.
54 2017-06-30 Nick Clifton <nickc@redhat.com>
57 * objdump.c (disassemble_section): Move check for an overlarge
58 section to just before the allocation of memory. Do not check
59 section size against file size, but instead use an arbitrary 2Gb
60 limit. Issue a warning message if the section is too big.
62 2017-06-30 Maciej W. Rozycki <macro@imgtec.com>
64 * NEWS: Mention microMIPS XPA support.
66 2017-06-30 Maciej W. Rozycki <macro@imgtec.com>
68 * NEWS: Mention microMIPS Release 5 ISA support.
70 2017-06-30 Maciej W. Rozycki <macro@imgtec.com>
72 * testsuite/binutils-all/mips/mips-xpa-virt-1.d: New test.
73 * testsuite/binutils-all/mips/mips-xpa-virt-2.d: New test.
74 * testsuite/binutils-all/mips/mips-xpa-virt-3.d: New test.
75 * testsuite/binutils-all/mips/mips-xpa-virt-4.d: New test.
76 * testsuite/binutils-all/mips/mips-xpa-virt.s: New test source.
77 * testsuite/binutils-all/mips/mips.exp: Run the new tests.
79 2017-06-29 Anton Kolesov <Anton.Kolesov@synopsys.com>
81 * testsuite/binutils-all/arc/double_store.s: New file.
82 * testsuite/binutils-all/arc/objdump.exp: Tests for disassembler
84 (do_objfile): New function.
85 (check_assembly): Likewise.
87 2017-06-29 Andreas Arnez <arnez@linux.vnet.ibm.com>
89 * readelf.c (get_note_type): Add NT_S390_GS_CB and NT_S390_GS_BC.
91 2017-06-28 H.J. Lu <hongjiu.lu@intel.com>
93 * objdump.c (dump_relocs_in_section): Cast to ufile_ptr when
94 comparing against bfd_get_file_size return.
96 2017-06-28 Nick Clifton <nickc@redhat.com>
98 * objcopy.c (merge_gnu_build_notes): Add support for version 2 notes.
99 * readelf.c (print_gnu_build_attribute_name): Likewise.
101 2017-06-28 Maciej W. Rozycki <macro@imgtec.com>
102 Matthew Fortune <matthew.fortune@imgtec.com>
104 * readelf.c (get_machine_flags) <E_MIPS_MACH_IAMR2>: New case.
105 (print_mips_isa_ext) <AFL_EXT_INTERAPTIV_MR2>: Likewise.
106 * NEWS: Mention Imagination interAptiv MR2 processor support.
108 2017-06-26 Nick Clifton <nickc@redhat.com>
111 * objdump.c (disassemble_section): Skip any section that is bigger
112 than the entire file.
114 2017-06-26 Nick Clifton <nickc@redhat.com>
117 * bucomm.c (get_file_size): Explicitly warn if the file is a
120 2017-06-24 Thomas Preud'homme <thomas.preudhomme@arm.com>
122 * readelf.c (arm_attr_tag_CPU_arch): Fill value for ARMv8-R.
124 2017-06-23 Nick Clifton <nickc@redhat.com>
127 * strings.c (strings_file): Warn about attempts to run strings on
130 2017-06-22 H.J. Lu <hongjiu.lu@intel.com>
132 * readelf.c (decode_x86_feature): Decode
133 GNU_PROPERTY_X86_FEATURE_1_SHSTK.
134 * testsuite/binutils-all/i386/shstk.d: New file.
135 * testsuite/binutils-all/i386/shstk.s: Likewise.
136 * testsuite/binutils-all/x86-64/shstk-x32.d: Likewise.
137 * testsuite/binutils-all/x86-64/shstk.d: Likewise.
138 * testsuite/binutils-all/x86-64/shstk.s: Likewise.
140 2017-06-22 H.J. Lu <hongjiu.lu@intel.com>
142 * readelf.c (decode_x86_feature): New.
143 (print_gnu_property_note): Call decode_x86_feature on
144 GNU_PROPERTY_X86_FEATURE_1_AND.
145 * testsuite/binutils-all/i386/empty.d: New file.
146 * testsuite/binutils-all/i386/empty.s: Likewise.
147 * testsuite/binutils-all/i386/ibt.d: Likewise.
148 * testsuite/binutils-all/i386/ibt.s: Likewise.
149 * testsuite/binutils-all/x86-64/empty-x32.d: Likewise.
150 * testsuite/binutils-all/x86-64/empty.d: Likewise.
151 * testsuite/binutils-all/x86-64/empty.s: Likewise.
152 * testsuite/binutils-all/x86-64/ibt-x32.d: Likewise.
153 * testsuite/binutils-all/x86-64/ibt.d: Likewise.
154 * testsuite/binutils-all/x86-64/ibt.s: Likewise.
156 2017-06-21 H.J. Lu <hongjiu.lu@intel.com>
158 * dwarf.c (READ_ULEB): Use DWARF_VMA_FMT to report error.
159 (READ_SLEB): Likewise.
161 2017-06-21 Nick Clifton <nickc@redhat.com>
164 * dwarf.c (LEB): Rename to SKIP_ULEB and READ_ULEB. Add check for
165 reading a value that is too big for the containing variable.
166 (SLEB): Rename to SKIP_SLEB and READ_SLEB. Add similar check.
167 Replace uses of LEB and SLEB with appropriate new macro.
168 (display_debug_frames): Use an unsigned int for the 'reg'
169 variable. Use a signed long for the 'l' variable.
171 2017-06-20 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
173 * readelf.c (get_s390_segment_type): Add support for the new
174 segment type PT_S390_PGSTE.
175 (get_segment_type): Call get_s390_segment_type.
177 2017-06-19 Nick Clifton <nickc@redhat.com>
180 * objdump.c (disassemble_bytes): Check that there is sufficient
181 data available before attempting to display it.
183 2017-06-06 Simon Marchi <simon.marchi@ericsson.com>
185 * sysinfo.y: Free memory allocated by token NAME.
187 2017-05-30 Anton Kolesov <anton.kolesov@synopsys.com>
189 * doc/binutils.texi: Document new cpu=... disassembler options for ARC.
191 2017-05-30 H.J. Lu <hongjiu.lu@intel.com>
194 * objdump.c (dump_relocs_in_section): Replace get_file_size
195 with bfd_get_file_size to get archive element size.
196 * testsuite/binutils-all/objdump.exp (test_objdump_f): New
198 (test_objdump_h): Likewise.
199 (test_objdump_t): Likewise.
200 (test_objdump_r): Likewise.
201 (test_objdump_s): Likewise.
202 Add objdump tests on archive.
204 2017-05-24 Yao Qi <yao.qi@linaro.org>
206 * objdump.c (disassemble_data): Caller update.
208 2017-05-19 Jose E. Marchesi <jose.marchesi@oracle.com>
210 * objcopy.c (merge_gnu_build_notes): Remove workaround that
211 prevented deleting relocations in duplicated notes in mips64 and
214 2017-05-19 Maciej W. Rozycki <macro@imgtec.com>
216 * testsuite/binutils-all/mips/mips-note-2.d: New test.
217 * testsuite/binutils-all/mips/mips-note-2r.d: New test.
218 * testsuite/binutils-all/mips/mips-note-2-n32.d: New test.
219 * testsuite/binutils-all/mips/mips-note-2-n64.d: New test.
220 * testsuite/binutils-all/mips/mips-note-2r-n32.d: New test.
221 * testsuite/binutils-all/mips/mips-note-2r-n64.d: New test.
222 * testsuite/binutils-all/mips/mips.exp: Define `has_newabi'.
225 2017-05-19 Maciej W. Rozycki <macro@imgtec.com>
227 * testsuite/lib/utils-lib.exp (run_dump_test): Handle the `dump'
230 2017-05-19 Jose E. Marchesi <jose.marchesi@oracle.com>
232 * NEWS: Mention the SPARC M8 support.
234 2017-05-19 Maciej W. Rozycki <macro@imgtec.com>
236 * testsuite/binutils-all/mips/mips.exp: Bail out right away if
239 2017-05-18 Alan Modra <amodra@gmail.com>
241 * strings.c: Don't compare boolean values against TRUE or FALSE.
243 2017-05-15 Jeff Law <law@redhat.com>
245 * readelf.c (display_arc_attribute): Avoid implicit fallthru.
247 2017-05-15 Maciej W. Rozycki <macro@imgtec.com>
249 * testsuite/binutils-all/mips/mips16-undecoded.d: Add `-mips3'
251 * testsuite/binutils-all/mips/mips16e2-undecoded.d: New test.
252 * testsuite/binutils-all/mips/mips16e2-extend-insn.d: New test.
253 * testsuite/binutils-all/mips/mips16-undecoded.s: Remove
255 * testsuite/binutils-all/mips/mips.exp: Run the new tests.
257 2017-05-15 Maciej W. Rozycki <macro@imgtec.com>
259 * readelf.c (print_mips_ases): Handle MIPS16e2 ASE.
260 * NEWS: Mention MIPS16e2 ASE support.
262 2017-05-12 Maciej W. Rozycki <macro@imgtec.com>
264 * testsuite/binutils-all/mips/mips16-extend-insn.d: Adjust BREAK
265 and SDBBP disassembly.
267 2017-05-10 Maciej W. Rozycki <macro@imgtec.com>
269 * testsuite/binutils-all/mips/mips.exp: Define `tempfile' and
270 `copyfile' variables.
272 2017-05-10 Claudiu Zissulescu <claziss@synopsys.com>
274 * readelf.c (decode_ARC_machine_flags): Recognize OSABI v4.
275 (get_arc_section_type_name): New function.
276 (get_section_type_name): Use the above function.
277 (display_arc_attribute): New function.
278 (process_arc_specific): Likewise.
279 (process_arch_specific): Handle ARC specific information.
281 2017-05-09 Kaz Kojima <kkojima@rr.iij4u.or.jp>
283 * MAINTAINERS (SH): Remove myself as SH maintainer.
285 2017-05-02 H.J. Lu <hongjiu.lu@intel.com>
287 * objcopy.c (merge_gnu_build_notes): Cast relcount to unsigned
288 long when comparing with sec->reloc_count.
290 2017-05-02 Nick Clifton <nickc@redhat.com>
292 * objcopy.c (merge_gnu_build_notes): Disable merge if there are
293 more internal relocs than external relocs.
295 2017-05-02 Maciej W. Rozycki <macro@imgtec.com>
297 * testsuite/binutils-all/mips/mips16-undecoded.d: Adjust the
298 disassembly of PC-relative LA and LW synthetic instructions.
300 2017-05-02 Nick Clifton <nickc@redhat.com>
303 * objdump.c (dump_relocs_in_section): Check for an excessive
304 number of relocs before attempting to dump them.
306 2017-05-01 Alan Modra <amodra@gmail.com>
308 * objcopy.c (merge_gnu_build_notes): Correct code deleting
311 2017-04-28 Nick Clifton <nickc@redhat.com>
314 * readelf.c (print_gnu_build_attribute_name): Allow for an empty
317 2017-04-28 Nick Clifton <nickc@redhat.com>
320 * readelf.c (process_version_sections): Check for underflow when
321 computing the start address of the auxillary version data.
323 2017-04-28 Nick Clifton <nickc@redhat.com>
326 * dwarf.c (process_extended_line_op): Do not assume that the
327 string extracted from the section is NUL terminated.
328 (fetch_indirect_string): If the string retrieved from the section
329 is not NUL terminated, return an error message.
330 (fetch_indirect_line_string): Likewise.
331 (fetch_indexed_string): Likewise.
333 2017-04-26 Nick Clifton <nickc@redhat.com>
336 * bucomm.c (get_file_size): Return -1 if file_name is NULL.
337 * ar.c (main): Fail with usage() invocation if no file names are
340 2017-04-26 Nick Clifton <nickc@redhat.com>
342 * readelf.c (process_section_headers): Warn about overlarge
344 (print_gnu_build_attribute_name): Print the number of unrecognised
345 note types. Fix formatting in the presence of errors.
346 (testsuite/binutils-all/note-2-32.s): Fix encoding of numeric notes.
347 (testsuite/binutils-all/note-2-64.s): Likewise.
349 2017-04-26 Maciej W. Rozycki <macro@imgtec.com>
351 * readelf.c (process_mips_specific): Add static GOT support.
353 2017-04-25 Maciej W. Rozycki <macro@imgtec.com>
355 * readelf.c (process_mips_specific): Remove error reporting from
358 2017-04-25 Maciej W. Rozycki <macro@imgtec.com>
360 * readelf.c (process_mips_specific): Remove null GOT data check.
362 2017-04-25 Maciej W. Rozycki <macro@imgtec.com>
364 * testsuite/binutils-all/mips/mips16-alias.d: New test.
365 * testsuite/binutils-all/mips/mips16-noalias.d: New test.
366 * testsuite/binutils-all/mips/mips16-alias.s: New test source.
367 * testsuite/binutils-all/mips/mips.exp: Run the new tests.
369 2017-04-23 Alan Modra <amodra@gmail.com>
372 * ar.c (main): Check -a, -b, -i and -N args are given.
374 2017-04-23 Alan Modra <amodra@gmail.com>
377 * ar.c (main): Check that an archive file is given after options.
379 2017-04-23 Alan Modra <amodra@gmail.com>
382 * objdump.c (disassemble_section): Check bfd_get_section_contents
385 2017-04-23 Alan Modra <amodra@gmail.com>
388 * dwarf.c (display_debug_lines_decoded): Don't segfault on NULL
391 2017-04-21 Nick Clifton <nickc@redhat.com>
394 * readelf.c (print_gnu_build_attribute_name): Check for an
395 overlarge name field.
397 2017-04-13 Nick Clifton <nickc@redhat.com>
400 * readelf.c (process_dynamic_section): Detect over large section
401 offsets in the DT_SYMTAB entry.
403 2017-04-13 Nick Clifton <nickc@redhat.com>
406 * readelf.c (process_mips_specific): Catch an unfeasible memory
407 allocation before it happens and print a suitable error message.
409 2017-04-13 Nick Clifton <nickc@redhat.com>
411 * objcopy.c: Add --no-merge-notes option to disable note merging.
412 Add --[no-]merge-notes option to strip, and enable it by default.
413 (num_bytes): New function.
414 (merge_gnu_build_notes): Add code to merge stack size notes.
415 * binutils.texi: Update strip and objcopy documentation.
416 * readelf.c (print_gnu_build_attribute_name): Use defined
417 constants for note types.
419 2017-04-10 John Delsignor <john.delsignore@roguewave.com>
422 * dwarf.c (display_gdb_index): Correct test for a corrupt address
425 2017-04-05 Jiong Wang <jiong.wang@arm.com>
427 * objcopy.c (struct redefine_node): Delete the field "next".
428 (redefine_sym_list): Deleted.
429 (redefine_specific_htab): New hash table.
430 (redefine_specific_reverse_htab): Likewise.
431 (eq_string_redefnode): New function.
432 (htab_hash_redefnode): Likewise.
433 (create_symbol2redef_htab): Likewise.
434 (add_specific_symbol_node): Likewise.
435 (create_symbol_htabs): Create redefine_specific_htab and
436 redefine_specific_reverse_htab.
437 (lookup_sym_redefinition): Use hash table instead of list.
438 (redefine_list_append): Likewise, and rename to add_redefine_and_check.
439 (copy_main): Use redefine_specific_htab instead of redefine_sym_list.
442 2017-04-04 H.J. Lu <hongjiu.lu@intel.com>
444 * NEWS: Mention support for ELF SHF_GNU_MBIND and
446 * readelf.c (get_segment_type): Handle PT_GNU_MBIND_XXX.
447 (get_elf_section_flags): Handle SHF_GNU_MBIND.
448 (process_section_headers): Likewise.
449 * testsuite/binutils-all/mbind1.s: New file.
450 * testsuite/binutils-all/objcopy.exp: Run readelf test on
453 2017-04-03 Nick Clifton <nickc@redhat.com>
456 * readelf.c (get_program_headers): Check for there being too many
457 program headers before attempting to allocate space for them.
459 2017-04-03 Nick Clifton <nickc@redhat.com>
462 * readelf.c (process_mips_specific): Check for an out of range GOT
463 entry before reading the module pointer.
465 2017-04-03 Nick Clifton <nickc@redhat.com>
468 * readelf.c (get_unwind_section_word): Fix snafu checking for
469 invalid word offsets in ARM unwind information.
471 2017-03-31 Pip Cet <pipcet@gmail.com>
473 * NEWS: Use "WebAssembly" consistently.
474 * testsuite/binutils-all/wasm32/wasm32.exp: Fix copyright notice.
476 2017-03-30 Pip Cet <pipcet@gmail.com>
478 * readelf.c: Add support for wasm32 ELF format WebAssembly files.
479 (guess_is_rela): Likewise.
480 (dump_relocations): Likewise.
481 (is_32bit_abs_reloc): Likewise.
482 (is_none_reloc_): Likewise.
483 * NEWS: Mention the new support.
484 * testsuite/lib/binutils-common.exp (is_elf_format): Mark wasm32
486 (supports_gnu_unique): Mark wasm32 as supporting STB_GNU_UNIQUE.
487 * testsuite/binutils-all/nm.exp: Mark wasm32 as requiring .size annotations.
488 * testsuite/binutils-all/wasm32: New directory.
489 * testsuite/binutils-all/wasm32/create-wasm.d: New file.
490 * testsuite/binutils-all/wasm32/create-wasm.s: Likewise.
491 * testsuite/binutils-all/wasm32/custom-section.d: Likewise.
492 * testsuite/binutils-all/wasm32/custom-section.s: Likewise.
493 * testsuite/binutils-all/wasm32/invalid-wasm-1.d: Likewise.
494 * testsuite/binutils-all/wasm32/invalid-wasm-1.s: Likewise.
495 * testsuite/binutils-all/wasm32/long-sections.d: Likewise.
496 * testsuite/binutils-all/wasm32/long-sections.s: Likewise.
497 * testsuite/binutils-all/wasm32/parse-wasm.d: Likewise.
498 * testsuite/binutils-all/wasm32/parse-wasm.s: Likewise.
499 * testsuite/binutils-all/wasm32/parse-wasm-2.d: Likewise.
500 * testsuite/binutils-all/wasm32/parse-wasm-2.s: Likewise.
501 * testsuite/binutils-all/wasm32/prepared-section.d: Likewise.
502 * testsuite/binutils-all/wasm32/prepared-section.s: Likewise.
503 * testsuite/binutils-all/wasm32/wasm32.exp: New file, run tests.
505 2017-03-29 Alan Modra <amodra@gmail.com>
507 * doc/binutils.texi (objdump): Document PowerPC -M options.
509 2017-03-21 Andi Kleen <ak@linux.intel.com>
511 * objdump.c (unwind_inlines): Add.
512 (option_values): Add OPTION_INLINES.
513 (show_line): Unwind inlines if requested.
514 (main): Parse OPTION_INLINES.
515 (usage): Document --inlines.
516 * doc/binutils.texi: Document --inlines.
519 2017-03-21 Nick Clifton <nickc@redhat.com>
521 * readelf.c (print_gnu_build_attribute_name): Allow stack
522 protection notes to contain numeric values. Use a colon rather
523 than a space to separate a string name from its values. Decode
524 the numeric value of a stack protection note.
525 * objcopy.c (merge_gnu_build_notes): Allow version notes to
526 contain extra text after the protocol version number.
528 2017-03-20 Mark Wielaard <mark@klomp.org>
530 * readelf.c (process_program_headers): Move dynamic_addr check
531 after .dynamic section cross check.
533 2017-03-17 Nick Clifton <nickc@redhat.com>
535 * readelf.c (print_gnu_build_attribute_name): Fix off by one error
536 printing the value for a build note with an ascii name.
538 2017-03-16 Nick Clifton <nickc@redhat.com>
540 * readelf.c (print_gnu_build_attribute_name): Add support for
541 GNU_BUILD_ATTRIBUTE_SHORT_ENUM.
543 2017-03-14 Nick Clifton <nickc@redhat.com>
545 * readelf.c (print_gnu_build_attribute_description): Move symbol
547 (print_symbol_for_build_attribute): New function. ...here.
548 Add to find the best symbol to associate with an OPEN note.
549 Add code to cache the symbol table and string table, so that they
550 are not loaded every time a note is displayed.
551 * testsuite/binutils-all/note-2-32.s: Add a function symbol.
552 * testsuite/binutils-all/note-2-64.s: Likewise.
553 * testsuite/binutils-all/note-2-32.d: Update expected note output.
554 * testsuite/binutils-all/note-2-64.d: Likewise.
556 2017-03-13 Alan Modra <amodra@gmail.com>
557 Taeung Song <treeze.taeung@gmail.com>
559 * objdump.c (update_source_path): Add abfd param. Add struct
560 stat var. Pass to try_print_file_open. Warn if source is more
562 (try_print_file_open, slurp_file): Add struct stat param to
564 (show_line): Call update_source_path with bfd.
566 2017-03-10 Chia-Hao Lo <fcamel@gmail.com>
569 * objdump.c (main): Set do_wide with --wide.
571 2017-03-10 Nick Clifton <nickc@redhat.com>
573 * readelf.c (get_machine_name): Rearrange switch table in order of
574 increasing machine number. Add missing entries.
576 2017-03-08 H.J. Lu <hongjiu.lu@intel.com>
579 * readelf.c (decode_x86_isa): Change argument to unsigned int.
580 (print_gnu_property_note): Retrieve property type and datasz as
581 4-byte integer. Consolidate property datasz check. Check
582 GNU_PROPERTY_LOPROC and GNU_PROPERTY_LOUSER.
583 * testsuite/binutils-all/i386/pr21231a.d: New file.
584 * testsuite/binutils-all/i386/pr21231a.s: Likewise.
585 * testsuite/binutils-all/i386/pr21231b.d: Likewise.
586 * testsuite/binutils-all/i386/pr21231b.s: Likewise.
587 * testsuite/binutils-all/x86-64/pr21231a.d: Likewise.
588 * testsuite/binutils-all/x86-64/pr21231a.s: Likewise.
589 * testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
590 * testsuite/binutils-all/x86-64/pr21231b.s: Likewise.
592 2017-03-06 Nick Clifton <nickc@redhat.com>
594 * readelf.c (print_gnu_build_attribute_name): Read byte values
595 from the name string as unsigned bytes.
596 (process_notes_at): Use memcpy to copy an unterminated name
599 2017-03-06 Sam Thursfield <sam.thursfield@codethink.co.uk>
601 * configure.ac (AC_CHECK_DECLS): Add asprintf.
602 * config.in: Regenerate.
603 * configure: Regenerate.
605 2017-03-02 Nick Clifton <nickc@redhat.com>
607 * readelf.c (print_gnu_build_attribute_description): Use global
608 symbols for OPEN attributes if at all possible.
609 * objcopy.c (is_merged_note_section): Support build note sections
610 without the SHF_GNU_BUILD_NOTE section flag set.
612 2017-03-02 Jan Kratochvil <jan.kratochvil@redhat.com>
614 * dwarf.c (debug_displays_assert): New static assertion.
616 2017-03-02 Jan Kratochvil <jan.kratochvil@redhat.com>
618 * dwarf.h (enum dwarf_section_display_enum): Add loclists and rnglists.
620 2017-03-01 Nick Clifton <nickc@redhat.com>
622 * readelf.c (get_note_type): Add support for GNU_BUILD_NOTEs.
623 (get_gnu_elf_note_type): Add support for GNU_PROPERTY_NOTEs.
624 (decode_x86_isa): New function.
625 (print_gnu_property_note): New function.
626 (print_gnu_note): Handle GNU_PROPERTY_NOTEs.
627 (print_gnu_build_attribute_description): New function.
628 (print_gnu_build_attribute_name): New function.
629 (process_note): Add support for GNU_BUILD_NOTEs.
630 * objcopy.c (--merge-notes): New command line option.
631 (copy_options): Add merge-notes.
632 (copy_usage): Likewise.
633 (is_merge_note_section): New function.
634 (merge_gnu_build_notes): New function.
635 (copy_object): Merge note sections if asked to do so.
636 (skip_section): Add skip_copy parameter. Add support for skipping
637 merged note sections.
638 (copy_relocations_in_section): Update call to skip_section.
639 (copy_section): Likewise.
640 (copy_main): Add support for merge-notes option.
641 * doc/binutils.texi: Document the new option to objcopy.
642 * NEWS: Mention the new feature.
643 * testsuite/binutils-all/note-2-32.d: New test. Checks note
644 merging on 32-bit targets.
645 * testsuite/binutils-all/note-2-32.s: New test source file.
646 * testsuite/binutils-all/note-2-64.d: New test. Like note-2-32.d
647 but for 64-bit targets.
648 * testsuite/binutils-all/note-2-64.s: New test source file.
649 * testsuite/binutils-all/objcopy.exp: Run the new test.
651 2017-02-28 Peter Bergner <bergner@vnet.ibm.com>
653 * objdump.c (main): Use remove_whitespace_and_extra_commas.
655 2017-02-27 Jan Kratochvil <jan.kratochvil@redhat.com>
657 Fix compilation with GCC 4.4.7.
658 * dwarf.c (display_loclists_list, display_debug_rnglists_list):
659 Initialize begin and end.
661 2017-02-25 Alan Modra <amodra@gmail.com>
663 * testsuite/binutils-all/dw5.S: Replace .string with .asciz.
664 Support hpux .comm variant.
665 * testsuite/binutils-all/readelf.exp: Define HPUX when assembling
666 dw5 test for hppa64-hpux.
668 2017-02-24 Nick Clifton <nickc@redhat.com>
670 * readelf.c (show_name, do_dynamic, do_syms, do_dyn_syms,
671 (do_reloc, do_sections, do_section_groups, do_section_details,
672 (do_segments, do_unwind, do_using_dynamic, do_header, do_dump,
673 (do_version, do_histogram, do_debugging, do_arch, do_notes,
674 (do_archive_index, is_32bit_elf, decompress_dumps): Use
676 (parse_args): Treat the do_* variables as booleans.
677 (print_vma): Return an unsigned int.
678 (print_symbol): Change width parameter to signed int.
679 (is_ia64_vms): Change return type to bfd_boolean.
680 (guess_is_rela): Likewise.
681 (slurp_rela_relocs): Likewise.
682 (slurp_rel_relocs): Likewise.
683 (dump_relocations): Likewise.
684 (process_file_header): Likewise.
685 (get_program_headers): Likewise.
686 (process_program_headers): Likewise.
687 (process_section_headers): Likewise.
688 (process_section_groups): Likewise.
689 (dump_ia64_vms_dynamic_fixups): Likewise.
690 (dump_ia64_vms_dynamic_relocs): Likewise.
691 (process_ia64_vms_dynamic_relocs): Likewise.
692 (process_relocs): Likewise.
693 (dump_ia64_unwind): Likewise.
694 (ia64_process_unwind): Likewise.
695 (dump_hppa_unwind): Likewise.
696 (slurp_hppa_unwind_table): Likewise.
697 (hppa_process_unwind): Likewise.
698 (decode_arm_unwind_bytecode): Likewise.
699 (decode_tic6x_unwind_bytecode): Likewise.
700 (decode_arm_unwind): Likewise.
701 (dump_arm_unwind): Likewise.
702 (arm_process_unwind): Likewise.
703 (process_unwind): Likewise.
704 (get_32bit_dynamic_section): Likewise.
705 (get_64bit_dynamic_section): Likewise.
706 (process_dynamic_section): Likewise.
707 (process_version_sections): Likewise.
708 (process_symbol_table): Likewise.
709 (process_syminfo): Likewise.
710 (apply_relocations): Likewise.
711 (disassemble_section): Likewise.
712 (dump_section_as_strings): Likewise.
713 (dump_section_as_bytes): Likewise.
714 (load_specific_debug_section): Likewise.
715 (load_debug_section): Likewise.
716 (display_debug_section): Likewise.
717 (process_section_contents): Likewise.
718 (process_attributes): Likewise.
719 (process_nds32_specific): Likewise.
720 (process_gnu_liblist): Likewise.
721 (print_core_note): Likewise.
722 (print_gnu_note): Likewise.
723 (print_v850_note): Likewise.
724 (process_netbsd_elf_note): Likewise.
725 (print_stapsdt_note): Likewise.
726 (print_ia64_vms_note): Likewise.
727 (process_note): Likewise.
728 (process_notes_at): Likewise.
729 (process_corefile_note_segments): Likewise.
730 (process_v850_notes): Likewise.
731 (process_note_sections): Likewise.
732 (process_notes): Likewise.
733 (process_arch_specific): Likewise.
734 (get_file_header): Likewise.
735 (process_object): Likewise.
736 (process_archive): Likewise.
737 (process_file): Likewise.
738 (section_subset): Make static.
739 (get_mips_reg_size): Return a signed integer.
740 (process_object): Reverse the logic of the return value.
741 (process_archive): Likewise.
742 (process_file): Likewise.
743 (process_program_headers): Fix snafu - if the program headers are
744 not available then this is not a cause to fail.
745 (process_corefile_note_segments): Likewise.
747 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
749 * readelf.c (get_ver_flags): Tidy the formatting of the string
752 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
754 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Make
756 <SHT_GNU_verneed>: Likewise.
758 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
760 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Limit
761 the number of entries processed by the section size. Don't
762 break out of the loop if `ent.vd_next' is 0.
764 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
766 * testsuite/binutils-all/dw5.S: New file.
767 * testsuite/binutils-all/dw5.W: New file.
768 * testsuite/binutils-all/readelf.exp (readelf -wiaoRlL): New test.
770 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
772 * dwarf.c (read_and_display_attr_value): Support DW_FORM_data16.
774 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
776 * dwarf.c (display_debug_macro): Support DWARF-5. Rename
779 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
781 * dwarf.c (decode_location_expression): Support DW_OP_implicit_pointer,
782 DW_OP_const_type, DW_OP_regval_type, DW_OP_deref_type, DW_OP_convert
783 and DW_OP_reinterpret.
784 (read_and_display_attr_value): Support DW_AT_call_value,
785 DW_AT_call_data_value, DW_AT_call_target and
786 DW_AT_call_target_clobbered.
788 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
790 * dwarf.c (fetch_indirect_line_string): New function.
791 (abbrev_attr): New field implicit_const.
792 (add_abbrev_attr): New parameter implicit_const.
793 (process_abbrev_section): Support DW_FORM_implicit_const.
794 (decode_location_expression): Support DW_OP_entry_value.
795 (read_and_display_attr_value): Add parameter implicit_const. Support
796 DW_FORM_line_strp and DW_FORM_implicit_const.
797 (read_and_display_attr): Add parameter implicit_const.
798 (process_debug_info): Support line_str and DWARF-5.
799 (read_debug_line_header): Support DWARF-5.
800 (display_formatted_table): New function.
801 (display_debug_lines_raw): New parameter file. Support DWARF-5.
802 (display_debug_lines_decoded): New parameter fileptr. Support DWARF-5.
803 (display_debug_lines): Pass file parameter.
804 (display_debug_macro): Update read_and_display_attr_value caller.
805 (display_debug_abbrev): Support DW_FORM_implicit_const.
806 (display_loclists_list): New function.
807 (display_loc_list): Support .debug_loclists.
808 (display_debug_ranges_list): New function from display_debug_ranges.
809 (display_debug_rnglists_list): New function.
810 (display_debug_ranges): Support .debug_rnglists.
811 (debug_displays): Add .debug_line_str, .debug_loclists and
813 * dwarf.h: Include dwarf2.h
814 (DWARF2_Internal_LineInfo): Add li_offset_size.
815 (DWARF2_Internal_CompUnit): Add cu_unit_type.
816 (enum dwarf_section_display_enum): Add line_str.
817 * readelf.c (process_section_headers): Add rnglists and loclists.
819 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
821 * dwarf.c (display_block): Add parameter delimiter.
822 (decode_location_expression): Update display_block callers.
823 (read_and_display_attr_value): Add parameter delimiter.
824 (read_and_display_attr, display_debug_macro): Update
825 read_and_display_attr_value caller.
827 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
829 * dwarf.c (display_loc_list): Use dwarf_vma for offset, base_address
831 (display_loc_list_dwo): Use dwarf_vma for offset.
832 (display_debug_loc): Use dwarf_vma for offset, base_address.
833 (struct range_entry, range_entry_compar): Use dwarf_vma for
835 (display_debug_ranges): Use dwarf_vma for ranges_offset, offset and
838 2017-02-23 Nick Clifton <nickc@redhat.com>
840 * readelf.c (display_tag_value): Use an explicit signed type for
842 (display_gnu_attributes): Use an unsigned integer type for
844 (display_power_gnu_attribute): Likewise.
845 (display_s390_gnu_attribute): Likewise.
846 (display_sparc_hwcaps): Likewise.
847 (display_sparc_hwcaps2): Likewise.
848 (display_sparc_gnu_attribute): Likewise.
849 (display_mips_gnu_attribute): Likewise.
850 (display_tic6x_attribute): Likewise.
851 (display_raw_attribute): Likewise.
852 (process_attributes): Likewise.
853 (process_arm_specific): Delete redundant function.
854 (process_power_specific): Likewise.
855 (process_s390_specific): Likewise.
856 (process_sparc_specific): Likewise.
857 (process_tic6x_specific): Likewise.
858 (process_msp430x_specific): Likewise.
859 (display_public_gnu_attributes): New function. Displays known
860 information about an unknown gnu attribute.
861 (display_generic_attribute): New function. Calls
862 display_tag_value for non-nul tags.
863 (process_arch_specific): Call process_attributes even for
864 architectures not known to specifically support gnu attributes.
866 2017-02-22 Jan Kratochvil <jan.kratochvil@redhat.com>
868 * dwarf.c (decode_location_expression): Display also OP.
870 2017-02-22 Maciej W. Rozycki <macro@imgtec.com>
872 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Print a
873 new line between the heading and the first version definition
876 2017-02-20 Nick Clifton <nickc@redhat.com>
879 * dwarf.c (cu_tu_indexes_read): Move into...
880 (load_cu_tu_indexes): ... here. Change the variable into
881 tri-state. Change the function into boolean, returning
882 false if the indicies could not be loaded.
883 (find_cu_tu_set): Return NULL if the indicies could not be
886 2017-02-17 Nick Clifton <nickc@redhat.com>
889 * readelf.c (find_section_in_set): Test for invalid section
892 2017-02-17 Nick Clifton <nickc@redhat.com>
894 * readelf.c (get_section_type_name): Add decoding of GNU section
897 2017-02-15 Nick Clifton <nickc@redhat.com>
899 * MAINTAINERS: (MIPS, MN10300): Move Eric Christopher to Past
902 2017-02-14 Nick Clifton <nickc@redhat.com>
905 * readelf.c (dump_section_as_strings): Reset the start address if
906 no decompression is perfromed.
907 (dump_section_as_bytes): Likewise.
909 2017-02-14 Nick Clifton <nickc@redhat.com>
912 * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or
915 2017-02-14 Nick Clifton <nickc@redhat.com>
918 * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE
920 (parse_number): Exit early if passed an empty string.
922 2017-02-14 Nick Clifton <nickc@redhat.com>
925 * readelf.c (IN_RANGE): New macro. Tests for an address + offset
926 being within a given range.
927 (target_specific_reloc_handling): Use macro to test for underflow
928 as well as overflow of reloc offset.
930 2017-02-13 Nick Clifton <nickc@redhat.com>
933 * nm.c (file_symbol): Add test of string length before testing
936 2017-02-13 Nick Clifton <nickc@redhat.com>
939 * readelf.c (dump_section_as_bytes): Handle the case where
940 uncompress_section_contents returns false.
941 (dump_section_as_bytes, load_specific_debug_section): Likewise.
943 2017-02-13 Nick Clifton <nickc@redhat.com>
946 * readelf.c (get_compression_header): Add size parameter. Check
947 size against sizeof compression header before attempting to
949 (process_section_headers): Pass size to get_compression_header.
950 (dump_section_as_strings): Likewise.
951 (dump_section_as_bytes): Likewise.
952 (load_specific_debug_section): Likewise.
954 2017-02-13 Nick Clifton <nickc@redhat.com>
957 * readelf.c (process_version_sections): Include size of auxillary
958 version information when checking for buffer overflow.
960 2017-02-13 Nick Clifton <nickc@redhat.com>
963 * readelf.c (process_section_contents): Fix off by one error
964 reporting un-dumped sections.
966 2017-02-13 Nick Clifton <nickc@redhat.com>
969 * readelf.c (target_specific_reloc_handling): Add num_syms
970 parameter. Check for symbol table overflow before accessing
971 symbol value. If reloc pointer is NULL, discard all saved state.
972 (apply_relocations): Pass num_syms to target_specific_reloc_handling.
973 Call target_specific_reloc_handling with a NULL reloc pointer
974 after processing all of the relocs.
976 2017-02-13 Nick Clifton <nickc@redhat.com>
979 * readelf.c (target_specific_reloc_handling): Add end parameter.
980 Check for buffer overflow before writing relocated values.
981 (apply_relocations): Pass end to target_specific_reloc_handling.
983 2017-01-27 Dilyan Palauzov <dilyan.palauzov@aegee.org>
984 Nick Clifton <nickc@redhat.com>
987 * doc/binutils.texi (ar): Extend documentation of the --plugin
988 option. Include a description of where the plugins should be
992 2017-01-23 Nick Clifton <nickc@redhat.com>
994 * MAINTAINERS: Add Bernd to Past Maintainers section.
995 (SCORE): Remove Mei Ligang as maintainer. Add to Past Maintainers
998 2017-01-23 Bernd Schmidt <bschmidt@redhat.com>
1000 * MAINTAINERS (BFIN): Remove myself as Blackfin maintainer.
1002 2017-01-20 Andrew Burgess <andrew.burgess@embecosm.com>
1004 * objdump.c (dump_section_header): Extract max section name length
1005 from data parameter, use this when formatting output.
1006 (find_longest_section_name): New function.
1007 (dump_headers): Calculate longest section name when in wide mode,
1008 reformat to unify printing of header line.
1010 2017-01-18 Bernhard Rosenkranzer <bero@lindev.ch>
1013 * arlex.l: Support processing with flex 2.6.3.
1014 * deflex.l: Likewise.
1016 2017-01-17 Dmitry Timoshkov <dmitry@baikal.ru>
1018 * resbin.c: Optional dialog control data immediately follows
1019 the control description without alignment.
1020 * testsuite/binutils-all/windres/controldata.rc: New test.
1022 * testsuite/binutils-all/windres/controldata.rsd: New test.
1024 2017-01-12 Nick Clifton <nickc@redhat.com>
1027 * NEWS: Mention the new feature.
1028 * testsuite/binutils-all/objdump.exp (test_build_id_debuglink):
1029 New proc to test the location of separate debug info files using
1030 the build-id method.
1032 2017-01-10 Nick Clifton <nickc@redhat.com>
1035 * stabs.c (parse_stab_members): Fix thinko checking for g++
1036 version 1 stabs information.
1038 2017-01-09 Nick Clifton <nickc@redhat.com>
1040 * objdump.c (display_file): Add new parameter 'last_file'. If
1041 last_file is true, do not call bfd_close at the end of the
1043 (main): Set the value of the last_file parameter when calling
1046 2017-01-09 Alan Modra <amodra@gmail.com>
1048 * readelf.c (process_section_headers): Correct .rel.dyn/.rela.dyn
1051 2017-01-06 Nick Clifton <nickc@redhat.com>
1053 * MAINTAINERS: Move Paul Brook to the Past Maintainers section.
1055 2017-01-04 Dilan Palauzov <dilyan.palauzov@aegee.org>
1058 * syslex.l (option): Add noyywrap
1061 2017-01-02 Alan Modra <amodra@gmail.com>
1063 Update year range in copyright notice of all files.
1065 For older changes see ChangeLog-2016
1067 Copyright (C) 2017 Free Software Foundation, Inc.
1069 Copying and distribution of this file, with or without modification,
1070 are permitted in any medium without royalty provided the copyright
1071 notice and this notice are preserved.
1077 version-control: never