Stop objdump from attempting to allocate a huge chunk of memory when parsing relocs...
[external/binutils.git] / binutils / ChangeLog
1 2017-11-29  Nick Clifton  <nickc@redhat.com>
2
3         PR 22508
4         * objdump.c (dump_relocs_in_section): Also check the section's
5         relocation count to make sure that it is reasonable before
6         attempting to allocate space for the relocs.
7
8 2017-11-29  Stefan Stroe  <stroestefan@gmail.com>
9
10         * po/Make-in (datadir): Define as @datadir@.
11         (localedir): Define as @localedir@.
12         (gnulocaledir, gettextsrcdir): Use @datarootdir@.
13
14 2017-11-28  H.J. Lu  <hongjiu.lu@intel.com>
15
16         PR binutils/22490
17         * readelf.c (process_notes_at): Add an argument for note
18         alignment.  If note alignment is less than 4, use 4 byte
19         alignment.  Otherwise, skip notes if alignment isn't 4 nor
20         8 bytes.
21         (process_corefile_note_segments): Pass segment alignment to
22         process_notes_at.
23         (process_note_sections): Pass section alignment to
24         process_notes_at.
25         (process_object): Call load_separate_debug_file only if
26         e_shstrndx != SHN_UNDEF.
27
28 2017-11-27  Nick Clifton  <nickc@redhat.com>
29
30         PR 22490
31         * readelf.c (dump_section_as_bytes): Check for a NULL string
32         section pointer.
33         (process_notes_at): Compute the alignment to use if displaying
34         notes from a segment.
35
36 2017-11-26  H.J. Lu  <hongjiu.lu@intel.com>
37
38         * dwarf.c (load_separate_debug_info): Rename argument name from
39         link to xlink.
40
41 2017-11-24  H.J. Lu  <hongjiu.lu@intel.com>
42
43         PR binutils/22444
44         * readelf.c (process_notes_at): Use ELF_NOTE_DESC_OFFSET to get
45         the offset of the note descriptor.  Use ELF_NOTE_NEXT_OFFSET to
46         get the offset of the next note entry.
47
48 2017-11-23  Pavel I. Kryukov  <kryukov@frtk.ru>
49
50         PR 22485
51         * readelf.c (process_archive): Use memset to initiaise
52         thin_filedata structure.
53
54 2017-11-21  H.J. Lu  <hongjiu.lu@intel.com>
55
56         PR binutils/22451
57         * testsuite/binutils-all/x86-64/objects.exp: New file.
58         * testsuite/binutils-all/x86-64/pr22451.o.bz2: Likewise.
59
60 2017-11-21  Claudiu Zissulescu  <claziss@synopsys.com>
61
62         * testsuite/binutils-all/arc/objdump.exp: Update pattern matching
63         expression.
64
65 2017-11-21  Nick Clifton  <nickc@redhat.com>
66
67         * dwarf.c (dwo_name, dwo_dir, dwo_id, dwo_id_len): New variables.
68         (read_and_display_attr_value): Record dwo variables if requested.
69         (display_augmentation_data): Rename to display_data and make
70         generic.
71         (load_dwo_file): New function.  Loads a separate dwarf object
72         file.
73         (load_separate_debug_file): Add reporting and loading of separate
74         dwarf objet files.
75         * readelf.c (process_section_headers): Add do_debug_links to list
76         of flags requiring a debug dump.
77         (display_debug_section): Tidy up code.
78         * doc/debug.options.texi: Add note that dwo links will also be
79         followed.
80         * testsuite/binutils-all/debuglink.s: Tidy code.
81         * testsuite/binutils-all/dwo.s: New test file.
82         * testsuite/binutils-all/readelf.wk2: New file - expected output
83         from readelf.
84         * testsuite/binutils-all/readelf.exp: Run the new test.
85
86 2017-11-18  Alan Modra  <amodra@gmail.com>
87
88         PR 22443
89         * nm.c (sort_symbols_by_size): Don't attempt to access
90         section symbol internal_elf_sym.
91         (print_symbol): Likewise.  Don't call bfd_get_symbol_version_string
92         for section symbols.
93         * objdump.c (compare_symbols): Don't attempt to access
94         section symbol internal_elf_sym.
95         (objdump_print_symname): Don't call bfd_get_symbol_version_string
96         for section symbols.
97
98 2017-11-17  Jim Wilson  <jimw@sifive.com>
99
100         * readelf.c (elf/riscv.h): Alphabetize include.
101         (is_32bit_inplace_add_reloc, is_32bit_inplace_sub_reloc)
102         (is_64bit_inplace_add_reloc, is_64bit_inplace_sub_reloc)
103         (is_16bit_inplace_add_reloc, is_16bit_inplace_sub_reloc)
104         (is_8bit_inplace_add_reloc, is_8bit_inplace_sub_reloc): New.
105         (apply_relocations): New locals reloc_inplace and reloc_subtract.
106         Call the new functions and set the new locals.  Call byte_get if
107         reloc_inplace.  Subtract sym->st_value if reloc_subtract.
108
109 2017-11-17  Nick Clifton  <nickc@redhat.com>
110
111         PR 22449
112         * ar.c (write_archive): Free the temporary file name.
113
114 2017-11-17  Nick Clifton  <nickc@redhat.com>
115
116         * readelf.c (process_archive): Include member name in the
117         file_name of the filedata structure.
118
119 2017-11-15  Alan Modra  <amodra@gmail.com>
120
121         PR 22426
122         * objcopy.c (copy_main): Free tmpname.
123
124 2017-11-15  Nick Clifton  <nickc@redhat.com>
125
126         PR 15152
127         * dwarf.h (enum dwarf_section_display_enum): Add gnu_debuglink,
128         gnu_debugaltlink and separate_debug_str.
129         (struct dwarf_section): Add filename field.
130         Add prototypes for load_separate_debug_file, close_debug_file and
131         open_debug_file.
132         * dwarf.c (do_debug_links): New.
133         (do_follow_links): New.
134         (separate_debug_file, separate_debug_filename): New.
135         (fetch_alt_indirect_string): New function.  Retrieves a string
136         from the debug string table in the separate debug info file.
137         (read_and_display_attr_value): Use it with DW_FORM_GNU_strp_alt.
138         (load_debug_section_with_follow): New function.  Like
139         load_debug_section, but if the first attempt fails, then tries
140         again in the separate debug info file.
141         (introduce): New function.
142         (process_debug_info): Use load_debug_section_with_follow and
143         introduce.
144         (load_debug_info): Likewise.
145         (display_debug_lines_raw): Likewise.
146         (display_debug_lines_decoded): Likewise.
147         (display_debug_macinfo): Likewise.
148         (display_debug_macro): Likewise.
149         (display_debug_abbrev): Likewise.
150         (display_debug_loc): Likewise.
151         (display_debug_str): Likewise.
152         (display_debug_aranges): Likewise.
153         (display_debug_addr); Likewise.
154         (display_debug_frames): Likewise.
155         (display_gdb_index): Likewise.
156         (process_cu_tu_index): Likewise.
157         (load_cu_tu_indexes): Likewise.
158         (display_debug_links): New function.  Displays the contents of a
159         .gnu_debuglink or .gnu_debugaltlink section.
160         (calc_gnu_debuglink_ctc32):New function.  Calculates a CRC32
161         value.
162         (check_gnu_debuglink): New function.  Checks the CRC of a
163         potential separate debug info file.
164         (parse_gnu_debuglink): New function.  Reads a CRC value out of a
165         .gnu_debuglink section.
166         (check_gnu_debugaltlink): New function.
167         (parse_gnu_debugaltlink): New function.  Reads the build-id value
168         out of a .gnu_debugaltlink section.
169         (load_separate_debug_info): New function.  Finds and loads a
170         separate debug info file.
171         (load_separate_debug_file): New function. Attempts to find and
172         follow a link to a separate debug info file.
173         (free_debug_memory): Free the separate debug info file
174         information.
175         (opts_table): Add "follow-links" and "links".
176         (dwarf_select_sections_by_letters): Add "k" and "K".
177         (debug_displays): Reformat.  Add .gnu-debuglink and
178         .gnu_debugaltlink.
179         Add an extra entry for .debug_str in a separate debug info file.
180         * doc/binutils.texi: Move description of debug dump features
181         common to both readelf and objdump into...
182         * objdump.c (usage): Add -Wk and -WK.
183         (load_specific_debug_section): Initialise the filename field in
184         the dwarf_section structure.
185         (close_debug_file): New function.
186         (open_debug_file): New function.
187         (dump_dwarf): Load and dump the separate debug info sections.
188         * readelf.c (struct filedata): New structure.  Contains various
189         variables that used to be global:
190         (current_file_size, string_table, string_table_length, elf_header)
191         (section_headers, program_headers, dump_sects, num_dump_sects):
192         Move into filedata structure.
193         (cmdline): New global variable.  Contains list of sections to dump
194         by number, as specified on the command line.
195         Add filedata parameter to most functions.
196         (load_debug_section): Load the string table if it has not already
197         been retrieved.
198         (close_file): New function.
199         (close_debug_file): New function.
200         (open_file): New function.
201         (open_debug_file): New function.
202         (process_object): Process sections in any separate debug info files.
203         * doc/debug.options.texi: New file.  Add description of =links and
204         =follow-links options.
205         * NEWS: Mention the new feature.
206         * elfcomm.c: Have the byte get functions take a const pointer.
207         * elfcomm.h: Update prototypes.
208         * testsuite/binutils-all/dw5.W: Update expected output.
209         * testsuite/binutils-all/objdump.WL: Update expected output.
210         * testsuite/binutils-all/objdump.exp: Add test of -WK and -Wk.
211         * testsuite/binutils-all/readelf.exp: Add test of -wK and -wk.
212         * testsuite/binutils-all/readelf.k: New file.
213         * testsuite/binutils-all/objdump.Wk: New file.
214         * testsuite/binutils-all/objdump.WK2: New file.
215         * testsuite/binutils-all/linkdebug.s: New file.
216         * testsuite/binutils-all/debuglink.s: New file.
217
218 2017-11-10  Jim Wilson  <jimw@sifive.com>
219
220         * testsuite/binutils-all/objdump.exp: Expect the debug_ranges test to
221         pass.
222
223 2017-11-07  Jim Wilson  <jimw@sifive.com>
224
225         * MAINTAINERS (RISC-V): Fix typo in my email address.
226
227 2017-11-07  Palmer Dabbelt  <palmer@sifive.com>
228
229         * MAINTAINERS (RISC-V): Add Jim Wilson as a maintainer.
230         Clean up Andrew's entry (remove trailing space, add tabs).
231         Change Palmer's email address, and clean up entry (add tabs).
232
233 2017-11-07  Alan Modra  <amodra@gmail.com>
234
235         * dwarf.c (read_uleb128): Properly pluralize messages.
236         (display_debug_lines_raw, display_debug_loc): Likewise.
237         (display_debug_names, process_cu_tu_index): Likewise.
238         * od-macho.c (dump_code_signature_superblob): Likewise.
239         * readelf.c (process_program_headers): Likewise.
240         (process_section_header, process_relocs): Likewise.
241         (hppa_process_unwind, arm_process_unwind): Likewise.
242         (process_dynamic_section, process_version_sections): Likewise.
243         (process_symbol_table, process_syminfo): Likewise.
244         (apply_relocations, process_mips_specific): Likewise.
245         (process_gnu_liblist, process_notes_at): Likewise.
246         (process_archive): Likewise.
247         * testsuite/binutils-all/dw2-1.W,
248         * testsuite/binutils-all/dw2-3.W,
249         * testsuite/binutils-all/dw2-3gabi.W,
250         * testsuite/binutils-all/dw5.S,
251         * testsuite/binutils-all/dw5.W,
252         * testsuite/binutils-all/i386/compressed-1a.d,
253         * testsuite/binutils-all/libdw2-compressedgabi.out,
254         * testsuite/binutils-all/objdump.W,
255         * testsuite/binutils-all/readelf.r,
256         * testsuite/binutils-all/readelf.r-64,
257         * testsuite/binutils-all/x86-64/compressed-1a.d: Update
258         for pluralization fixes.
259
260 2017-11-07  Alan Modra  <amodra@gmail.com>
261
262         * sysdep.h (textdomain, bindtextdomain): Use safer "do nothing".
263         (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS.
264
265 2017-11-03  Claudiu Zissulescu  <claziss@synopsys.com>
266
267         * doc/binutils.texi (ARC): Update disassembler options.
268         * testsuite/binutils-all/arc/hexprint.s: New file.
269         * testsuite/binutils-all/arc/objdump.exp: Test hex printing
270         feature.
271
272 2017-11-03  Mingi Cho  <mgcho.minic@gmail.com>
273             Nick Clifton  <nickc@redhat.com>
274
275         PR 22386
276         * dwarf.c (read_cie): Use bfd_size_type for
277         augmentation_data_len.
278         (display_augmentation_data): New function.
279         (display_debug_frames): Use it.
280         Check for integer overflow when testing augmentation_data_len.
281
282 2017-11-02  Mingi Cho  <mgcho.minic@gmail.com>
283
284         PR 22384
285         * readelf.c (print_gnu_property_note): Improve overflow checks so
286         that they will work on a 32-bit host.
287
288 2017-11-01  James Bowman  <james.bowman@ftdichip.com>
289
290         * readelf.c (is_16bit_abs_reloc): Add entry for FT32.
291
292 2017-10-31  Nick Clifton  <nickc@redhat.com>
293
294         * readelf.c (process_relocs): Tell users if no static relocs were
295         found, but if they had added --use-dynamic to the command line
296         then relocs would have been displayed.
297
298 2017-10-28  Alan Modra  <amodra@gmail.com>
299
300         PR 22361
301         * readelf.c (process_archive_index_and_symbols): Ensure ar_size
302         field is zero terminated for strtoul.
303         (setup_archive, get_archive_member_name): Likewise.
304
305 2017-10-27  Simon Marchi  <simon.marchi@ericsson.com>
306
307         * dwarf.c (struct Frame_Chunk) <cfa_reg>: Change type to
308         unsigned int.
309         (display_debug_frames): Read CFA reg as an unsigned number.
310
311 2017-10-25  Alan Modra  <amodra@gmail.com>
312
313         * nm.c (filter_symbols): Match "__gnu_lto_slim" optionally prefixed
314         with "_".
315
316 2017-10-18  Eric Botcazou  <ebotcazou@adacore.com>
317
318         * MAINTAINERS: Add myself as Visium maintainer.
319
320 2017-10-18  Nick Clifton  <nickc@redhat.com>
321
322         * README-how-to-make-a-release: A note about checking file and
323         directory permissions.
324
325         * MAINTAINERS: Move Svein Seldal to Past Maintainers section.
326
327 2017-10-18  Alan Modra  <amodra@gmail.com>
328
329         PR 22303
330         * readelf.c (print_core_note): Ensure "count" sanity check
331         calculation doesn't overflow.
332         (process_notes_at): Perform note namesz and descsz checks
333         using unsigned comparisons against data remaining.  Catch
334         alignment overflow of namesz and descsz too.  Don't allocate a
335         temp for terminating "name" when there is space available
336         before descdata.
337
338 2017-10-17  Tom Tromey  <tom@tromey.com>
339
340         * MAINTAINERS: Add myself as dwarf-mode.el maintainer.
341
342 2017-10-11  Peeter Joot  <peeter.joot@lzlabs.com>
343         Nick Clifton  <nickc@redhat.com>
344
345         * dwarf.c (read_and_display_attr_value): Handle DW_AT_endianity,
346         DW_END_default, DW_END_big, DW_END_little, DW_ATE_UCS,
347         DW_ATE_ASCII, DW_CC_pass_by_reference, DW_CC_pass_by_value,
348         DW_CC_GNU_renesas_sh, DW_CC_GNU_borland_fastcall_i386,
349         DW_AT_decimal_sign, DW_AT_defaulted, DW_AT_discr_list.
350         (get_TAG_name): Report user generated tag values.
351         * testsuite/binutils-all/dwarf-attributes.S: New test.
352         * testsuite/binutils-all/dwarf-attributes.W. Expected output from
353         readelf.
354         * testsuite/binutils-all/readelf.exp: Run the new test.
355
356 2017-10-10  Tom Tromey  <tom@tromey.com>
357
358         * dwarf-mode.el: Bump to version 1.4.
359
360 2017-10-10  Tom Tromey  <tom@tromey.com>
361
362         * dwarf-mode.el (dwarf--process, dwarf--deletion-region): New
363         defvar.
364         (dwarf--check-running, dwarf--sentinel, dwarf--invoke)
365         (dwarf--filter): New functions.
366         (dwarf-do-insert-substructure, dwarf-do-refresh): Call
367         dwarf--check-running, dwarf--invoke.
368         (dwarf-browse): Initialize new variables.
369
370 2017-10-10  Tom Tromey  <tom@tromey.com>
371
372         * dwarf-mode.el: Set lexical-binding.
373
374 2017-10-10  Tom Tromey  <tom@tromey.com>
375
376         * dwarf-mode.el (dwarf-mode-map): New defvar.
377
378 2017-10-10  Tom Tromey  <tromey@sourceware.org>
379
380         PR 22249
381         * dwarf.c (process_debug_info): Skip any comp unit that ends
382         before dwarf_start_die.
383
384 2017-10-06  Alan Modra  <amodra@gmail.com>
385
386         * dwarf.c (process_debug_info): Consolidate header length checks.
387         (display_debug_pubnames_worker): Use "start" to read header.
388         Properly check header length and report errors earlier.
389         Simplify loop printing pubnames.
390         (get_line_filename_and_dirname): Catch small negative "length"
391         values.
392         (display_debug_aranges): Likewise.  Report header errors
393         earlier using standardized message.
394         (display_debug_names): Likewise.
395
396 2017-10-05  Joseph Myers  <joseph@codesourcery.com>
397
398         * readelf.c (decode_arm_unwind): Initialize res to TRUE.
399
400 2017-10-05  Nick Clifton  <nickc@redhat.com>
401
402         PR 22260
403         * objcopy.c (strip_main): Add 'M' character to short options list
404         when calling getopt_long.
405
406 2017-10-05  Nick Clifton  <nickc@redhat.com>
407
408         PR 22262
409         * readelf.c (dump_relocations): Do not truncate reloc names when
410         displaying output in wide mode.
411
412 2017-10-05  Nick Clifton  <nickc@redhat.com>
413
414         * README-how-to-make-a-release: Merge steps 3, 4 and 5, and insert
415         the git tag operation at the correct location.
416
417 2017-10-05  Alan Modra  <amodra@gmail.com>
418
419         PR 22239
420         * dwarf.c (read_cie): Don't compare "start" and "end" pointers
421         after adding a possibly wild length to "start", compare the length
422         to the difference of the pointers instead.  Remove now redundant
423         "negative" length test.
424
425 2017-10-05  Tristan Gingold  <tgingold@free.fr>
426
427         * MAINTAINERS: Update email address.  Redirect release maintainer
428         to global maitainers.
429
430 2017-10-01  Alan Modra  <amodra@gmail.com>
431
432         PR 22232
433         PR 22230
434         * objdump.c (load_specific_debug_section): Introduce a temp to
435         stop bfd_get_full_section_contents NULLing out section->start.
436
437 2017-10-01  Alan Modra  <amodra@gmail.com>
438
439         PR 22230
440         * objdump.c (load_specific_debug_section): Allocate an extra byte
441         for a terminating NUL.
442
443 2017-09-30  Alan Modra  <amodra@gmail.com>
444
445         PR 21978
446         * objdump.c: Formatting.
447         (show_line): Reset prev_line when function name changes.
448
449 2017-09-27  Nick Clifton  <nickc@redhat.com>
450
451         PR 22219
452         * dwarf.c (process_debug_info): Add a check for a negative
453         cu_length field.
454
455 2017-09-27  Alan Modra  <amodra@gmail.com>
456
457         PR 22216
458         * readelf.c (process_symbol_table): Check that DT_HASH symbol
459         chains are only visited once, and report an error if not.  Display
460         invalid symbol index if chain is out of range.  Use the same logic
461         when calculating histograms rather than the PR 17531 fix.  Delete
462         bogus check that chained index is less than number of buckets.
463
464 2017-09-26  Nick Clifton  <nickc@redhat.com>
465
466         PR 22154
467         * dwarf.c (get_line_filename_and_dirname): Add extra checks for
468         buffer overruns.
469
470 2017-09-26  Nick Clifton  <nickc@redhat.com>
471
472         * README-how-to-make-a-release: New file.
473
474 2017-09-26  Alan Modra  <amodra@gmail.com>
475
476         PR 21732
477         * dwarf.c (READ_ULEB): Don't use DWARF_VMA_FMT in translated string.
478         (READ_SLEB): Likewise.
479         * readelf.c (bfd_vmatoa): New function.
480         (get_data, get_dynamic_data): Use it for printing error messages.
481
482 2017-09-25  H.J. Lu  <hongjiu.lu@intel.com>
483
484         PR binutils/22203
485         * nm.c (display_rel_file): Free memory returned from
486         bfd_get_synthetic_symtab.
487
488 2017-09-22  Alexandre Oliva <aoliva@redhat.com>
489
490         * dwarf.h (debug_info): Add loc_views and num_loc_views.
491         * dwarf.c (vm1): New constant.
492         (print_dwarf_view): New function.
493         (read_and_display_attr_value): Support DW_AT_GNU_locviews.
494         (process_debug_info): Keep num_loc_offsets and num_loc_views
495         in sync.
496         (display_view_pair_list): New function.
497         (display_loc_list_dwo): Take vstart_ptr; update it.  Dump
498         location view pairs before the range they apply to, when a
499         viewlist augments the loc list.
500         (display_loc_list): Likewise.  Check view numbers in range
501         tests.
502         (display_loclists_list): Likewise.  Handle view pair entries,
503         and warn on trailing ones.
504         (loc_views): New variable.
505         (loc_offsets_compar): Compare loc_views if loc_offsets are the
506         same.
507         (display_debug_loc): Check and sort loc_views too.  Accept
508         loc_view as expected_start.  Skip if lists and views are the
509         same.  Dump locview list separately in order, and pass the
510         locview list base to each list dump function.  Warn and skip
511         overlap and hole checking if we find loclists and locviews to
512         not be adjacent.
513         * testsuite/binutils-all/locview-1.s: New.
514         * testsuite/binutils-all/readelf.locview-1: New.
515         * testsuite/binutils-all/locview-2.s: New.
516         * testsuite/binutils-all/readelf.locview-2: New.
517         * testsuite/binutils-all/readelf.exp: Run new tests.  Fix
518         option spelling in pr18374 fail message.  XFAIL dw5 test on
519         nds32*-elf.
520
521 2017-09-22  Alan Modra  <amodra@gmail.com>
522
523         * testsuite/binutils-all/readelf.exp: Don't perror and exit on
524         bintest.s assembly failure.  Report tests unresolved instead.
525         Likewise for version note test, pr18374, decompress, and dw5
526         tests.
527         (readelf_test): Set testname to include both option and binary
528         file name.  Use for pass/fail.
529
530 2017-09-21  Maciej W. Rozycki  <macro@imgtec.com>
531
532         * readelf.c (get_machine_flags) <E_MIPS_MACH_5900>: New case.
533
534 2017-09-05  Nick Clifton  <nickc@redhat.com>
535
536         PR 21995
537         * readelf.c (process_mips_specific): Add checks for a NULL data
538         pointer.
539
540 2017-09-05  Alexander Fedotov <alexander.fedotov@nxp.com>
541             Edmar Wienskoski <edmar.wienskoski@nxp.com
542
543         * readelf.c (get_elf_section_flags): Add VLE.
544         (process_section_headers): Add VLE key to details.
545
546 2017-08-25  Alan Modra  <amodra@gmail.com>
547
548         PR 21994
549         * readelf.c (process_version_sections <SHT_GNU_verdef>): Check
550         vd_aux and vda_next for sanity.  Delete "end".  Correct overflow
551         checks.
552         (process_version_sections <SHT_GNU_verneed>): Correct overflow
553         check.  Don't report invalid vna_next on overflow.  Do report
554         invalid vna_next on size less than aux info.
555
556 2017-08-23  Alan Modra  <amodra@gmail.com>
557
558         PR 21990
559         * readelf.c (process_version_sections <SHT_GNU_verneed>): Check
560         for invalid vn_next field before adding to idx.  Use unsigned
561         long for index vars.  Move index checks.
562         <SHT_GNU_verdef>: Likewise for vd_next.
563
564 2017-08-17  Nick Clifton  <nickc@redhat.com>
565
566         * testsuite/binutils-all/note-3-64.s: New test.  Checks assembly
567         and decoding of version2 GNU build attribute notes.
568         * testsuite/binutils-all/note-3-32.s: New test.  32-bit version of
569         the above test.
570         * testsuite/binutils-all/note-3-64.d: New test driver.
571         * testsuite/binutils-all/note-3-32.d: New test driver.
572         * testsuite/binutils-all/objcopy.exp: Run the new test.
573         * readelf.c (is_64bit_abs_reloc): Add R_SPARC_64.
574
575 2017-08-14  Gustavo Romero  <gromero@linux.vnet.ibm.com>
576
577         * readelf.c (get_note_type): Handle PPC note types available
578         since Linux 4.8.
579
580 2017-08-12  Alan Modra  <amodra@gmail.com>
581
582         * readelf.c (process_note): Qualify NT_GNU_BUILD_ATTRIBUTE notes
583         by name data.
584
585 2017-08-08  Nick Clifton  <nickc@redhat.com>
586
587         PR 21909
588         * prdbg.c (pr_int_type): Increase size of local string buffer.
589         (pr_float_type): Likewise.
590         (pr_bool_type): Likewise.
591
592 2017-08-02  Nick Clifton  <nickc@redhat.com>
593
594         PR 21702
595         * arsup.c (ar_addmod): Add plugin support for the MRI ADDMOD
596         command.
597
598 2017-08-02  Nick Clifton  <nickc@redhat.com>
599
600         * testsuite/binutils-all/objdump.exp (cpus_expected): Add am33-2.
601
602 2017-08-02  Alan Modra  <amodra@gmail.com>
603
604         * readelf.c (is_32bit_abs_reloc): Add R_IA64_SECREL32MSB and
605         R_IA64_DIR32MSB.
606         (is_64bit_abs_reloc): Add R_IA64_DIR64MSB.
607         (is_64bit_pcrel_reloc): Add R_IA64_PCREL64MSB.
608
609 2017-08-01  Nick Clifton  <nickc@redhat.com>
610
611         * po/sv.po: Updated Swedish translation.
612
613 2017-07-31  Marty Plummer  <ntzrmtthihu777@gmail.com>
614
615         PR 21861
616         * winduni.c (codepages): Use cp1252 for codepage 0.
617
618 2017-07-25  Nick Clifton  <nickc@redhat.com>
619
620         PR 21820
621         * readelf.c (dump_section_as_strings): Do not fail if the section
622         was empty.
623         (dump_section_as_bytes): Likewise.
624
625 2017-07-24  Nick Clifton  <nickc@redhat.com>
626
627         PR 21813
628         * rddbg.c (read_symbol_stabs_debugging_info): Check for an empty
629         string whilst concatenating symbol names.
630
631 2017-07-21  Nick Clifton  <nickc@redhat.com>
632
633         * po/fr.po: Updated French translation.
634
635 2017-07-21  Simon Marchi  <simon.marchi@ericsson.com>
636
637         * dwarf.c (last_pointer_size, warned_about_missing_comp_units):
638         Remove.
639         (load_debug_info): Remove assignments to those two variables.
640
641 2017-07-21  Alexandre Oliva  <aoliva@redhat.com>
642
643         * dwarf.c (struct State_Machine_Registers): Add view field.
644         (reset_state_machine): Reset view.
645         (process_extended_line_op): Reset view when appropriate.
646         (display_debug_lines_raw): Increment or reset view when appropriate.
647         Print nonzero views.  Support print view resets, disabled by default.
648         (display_debug_lines_decoded): Likewise.  Disambiguate op_code tests,
649         enabling printing of end_sequence.
650         * testsuite/binutils-all/dw2-1.W: Add nonzero views.
651         * testsuite/binutils-all/dw2-3.W: Likewise.
652         * testsuite/binutils-all/dw2-3gabi.W: Likewise.
653         * testsuite/binutils-all/dw5.W: Add end sequence lines.
654         * testsuite/binutils-all/i386/compressed-1a.d: Add nonzero views.
655         * testsuite/binutils-all/libdw2-compressedgabi.out: Likewise.
656         * testsuite/binutils-all/objdump.W: Likewise.
657         * testsuite/binutils-all/objdump.WL: Add end sequence lines.
658         * testsuite/binutils-all/x86-64/compressed-1a.d: Add nonzero views.
659
660 2017-07-19  Tristan Gingold  <gingold@adacore.com>
661
662         * nm.c (show_stats): Remove variable.
663         (long_options): Remove --stats option.
664         (main): Remove handling of --stats.
665
666 2017-07-18  Nick Clifton  <nickc@redhat.com>
667
668         PR 21775
669         * coffgrok.c: Fix spelling typos.
670         * readelf.c: Likewise.
671         * stabs.c: Likewise.
672         * testsuite/binutils-all/objcopy.exp: Likewise.
673
674 2017-07-18  Nick Clifton  <nickc@redhat.com>
675
676         * po/sv.po: Updated Swedish translation.
677
678 2017-07-18  Hans-Peter Nilsson  <hp@bitrange.com>
679
680         * dwarf.c (display_debug_names): Initialize hash_prev.
681
682 2017-07-17  Nick Clifton  <nickc@redhat.com>
683
684         PR 21433
685         * ar.c (main): Skip check for no files on the command line when
686         running in MRI mode.
687
688 2017-07-13  H.J. Lu  <hongjiu.lu@intel.com>
689
690         * testsuite/binutils-all/objdump.exp: Always delete $testarchive
691         first.
692
693 2017-07-12  Alan Modra  <amodra@gmail.com>
694
695         * po/bg.po: Update from translationproject.org/latest/binutils/.
696         * po/ca.po: Likewise.
697         * po/da.po: Likewise.
698         * po/es.po: Likewise.
699         * po/fi.po: Likewise.
700         * po/fr.po: Likewise.
701         * po/hr.po: Likewise.
702         * po/id.po: Likewise.
703         * po/it.po: Likewise.
704         * po/ja.po: Likewise.
705         * po/ro.po: Likewise.
706         * po/ru.po: Likewise.
707         * po/sk.po: Likewise.
708         * po/sr.po: Likewise.
709         * po/sv.po: Likewise.
710         * po/tr.po: Likewise.
711         * po/uk.po: Likewise.
712         * po/vi.po: Likewise.
713         * po/zh_CN.po: Likewise.
714         * po/zh_TW.po: Likewise.
715
716 2017-07-12  Nick Clifton  <nickc@redhat.com>
717
718         Fix compile time warnings using gcc 7.1.1.
719         * dwarf.c (dwarf_vmatoa_1): Do not pass a NULL string pointer to
720         sprintf.
721         * srconv.c (walk_tree_type): Initialise the spare field of the
722         IT_dty structure.
723
724 2017-07-11  Andreas Schwab  <schwab@suse.de>
725
726         * readelf.c (process_note): Print newline after description data
727         in narrow mode.
728         (print_core_note): Print newline if nothing was printed in wide
729         mode.
730
731 2017-07-09  Rafael Fontenelle <rafaelff@gnome.org>
732
733         * dwarf.c (display_formatted_table): Fix error message typo.
734
735 2017-07-07  John Baldwin  <jhb@FreeBSD.org>
736
737         * readelf.c (get_freebsd_elfcore_note_type): Handle
738         NT_FREEBSD_PTLWPINFO.
739
740 2017-07-05  H.J. Lu  <hongjiu.lu@intel.com>
741
742         * dwarf.c (display_debug_names): Replace index with xindex.
743
744 2017-07-04  Tristan Gingold  <gingold@adacore.com>
745
746         * configure: Regenerate.
747
748 2017-07-04  Tristan Gingold  <gingold@adacore.com>
749
750         * NEWS: Add marker for 2.29.
751
752 2017-07-03  Tristan Gingold  <gingold@adacore.com>
753
754         * po/binutils.pot: Regenerate.
755
756 2017-07-03  Alan Modra  <amodra@gmail.com>
757
758         * strings.c (filename_and_size_t): Delete.
759         (strings_a_section): Don't check section size against file size.
760         Use bdf_malloc_and_get_section.  Report an error on failures.
761         Replace arg param with filename and got_a_section param.
762         (got_a_section): Move to..
763         (strings_object_file): ..an auto var here.  Iterate over sections
764         rather than calling bfd_map_over_sections.  Adjust strings_a_section
765         call.
766
767 2017-07-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
768
769         * dwarf.c: Include assert.h.
770         (MAX, MIN, get_IDX_name, display_debug_names): New.
771         (debug_displays): Add .debug_names.
772         * dwarf.h: (enum dwarf_section_display_enum): Add debug_names.
773         * readelf.c (process_section_headers): Add ".debug_names".
774
775 2017-07-01  Alan Modra  <amodra@gmail.com>
776
777         PR binutils/21665
778         * objdump.c (strtab): Make var a bfd_byte*.
779         (disassemble_section): Don't limit malloc size.  Instead, use
780         bfd_malloc_and_get_section.
781         (read_section_stabs): Use bfd_malloc_and_get_section.  Return
782         bfd_byte*.
783         (find_stabs_section): Remove now unnecessary cast.
784         * objcopy.c (copy_object): Use bfd_malloc_and_get_section.  Free
785         contents on error return.
786         * nlmconv.c (copy_sections): Use bfd_malloc_and_get_section.
787
788 2017-06-30  Nick Clifton  <nickc@redhat.com>
789
790         PR binutils/21665
791         * objdump.c (disassemble_section): Move check for an overlarge
792         section to just before the allocation of memory.  Do not check
793         section size against file size, but instead use an arbitrary 2Gb
794         limit.  Issue a warning message if the section is too big.
795
796 2017-06-30  Maciej W. Rozycki  <macro@imgtec.com>
797
798         * NEWS: Mention microMIPS XPA support.
799
800 2017-06-30  Maciej W. Rozycki  <macro@imgtec.com>
801
802         * NEWS: Mention microMIPS Release 5 ISA support.
803
804 2017-06-30  Maciej W. Rozycki  <macro@imgtec.com>
805
806         * testsuite/binutils-all/mips/mips-xpa-virt-1.d: New test.
807         * testsuite/binutils-all/mips/mips-xpa-virt-2.d: New test.
808         * testsuite/binutils-all/mips/mips-xpa-virt-3.d: New test.
809         * testsuite/binutils-all/mips/mips-xpa-virt-4.d: New test.
810         * testsuite/binutils-all/mips/mips-xpa-virt.s: New test source.
811         * testsuite/binutils-all/mips/mips.exp: Run the new tests.
812
813 2017-06-29  Anton Kolesov  <Anton.Kolesov@synopsys.com>
814
815         * testsuite/binutils-all/arc/double_store.s: New file.
816         * testsuite/binutils-all/arc/objdump.exp: Tests for disassembler
817         options.
818         (do_objfile): New function.
819         (check_assembly): Likewise.
820
821 2017-06-29  Andreas Arnez  <arnez@linux.vnet.ibm.com>
822
823         * readelf.c (get_note_type): Add NT_S390_GS_CB and NT_S390_GS_BC.
824
825 2017-06-28  H.J. Lu  <hongjiu.lu@intel.com>
826
827         * objdump.c (dump_relocs_in_section): Cast to ufile_ptr when
828         comparing against bfd_get_file_size return.
829
830 2017-06-28  Nick Clifton  <nickc@redhat.com>
831
832         * objcopy.c (merge_gnu_build_notes): Add support for version 2 notes.
833         * readelf.c (print_gnu_build_attribute_name): Likewise.
834
835 2017-06-28  Maciej W. Rozycki  <macro@imgtec.com>
836             Matthew Fortune  <matthew.fortune@imgtec.com>
837
838         * readelf.c (get_machine_flags) <E_MIPS_MACH_IAMR2>: New case.
839         (print_mips_isa_ext) <AFL_EXT_INTERAPTIV_MR2>: Likewise.
840         * NEWS: Mention Imagination interAptiv MR2 processor support.
841
842 2017-06-26  Nick Clifton  <nickc@redhat.com>
843
844         PR binutils/21665
845         * objdump.c (disassemble_section): Skip any section that is bigger
846         than the entire file.
847
848 2017-06-26  Nick Clifton  <nickc@redhat.com>
849
850         PR binutils/21659
851         * bucomm.c (get_file_size): Explicitly warn if the file is a
852         directory.
853
854 2017-06-24  Thomas Preud'homme  <thomas.preudhomme@arm.com>
855
856         * readelf.c (arm_attr_tag_CPU_arch): Fill value for ARMv8-R.
857
858 2017-06-23  Nick Clifton  <nickc@redhat.com>
859
860         PR binutils/21659
861         * strings.c (strings_file): Warn about attempts to run strings on
862         a directory.
863
864 2017-06-22  H.J. Lu  <hongjiu.lu@intel.com>
865
866         * readelf.c (decode_x86_feature): Decode
867         GNU_PROPERTY_X86_FEATURE_1_SHSTK.
868         * testsuite/binutils-all/i386/shstk.d: New file.
869         * testsuite/binutils-all/i386/shstk.s: Likewise.
870         * testsuite/binutils-all/x86-64/shstk-x32.d: Likewise.
871         * testsuite/binutils-all/x86-64/shstk.d: Likewise.
872         * testsuite/binutils-all/x86-64/shstk.s: Likewise.
873
874 2017-06-22  H.J. Lu  <hongjiu.lu@intel.com>
875
876         * readelf.c (decode_x86_feature): New.
877         (print_gnu_property_note): Call decode_x86_feature on
878         GNU_PROPERTY_X86_FEATURE_1_AND.
879         * testsuite/binutils-all/i386/empty.d: New file.
880         * testsuite/binutils-all/i386/empty.s: Likewise.
881         * testsuite/binutils-all/i386/ibt.d: Likewise.
882         * testsuite/binutils-all/i386/ibt.s: Likewise.
883         * testsuite/binutils-all/x86-64/empty-x32.d: Likewise.
884         * testsuite/binutils-all/x86-64/empty.d: Likewise.
885         * testsuite/binutils-all/x86-64/empty.s: Likewise.
886         * testsuite/binutils-all/x86-64/ibt-x32.d: Likewise.
887         * testsuite/binutils-all/x86-64/ibt.d: Likewise.
888         * testsuite/binutils-all/x86-64/ibt.s: Likewise.
889
890 2017-06-21  H.J. Lu  <hongjiu.lu@intel.com>
891
892         * dwarf.c (READ_ULEB): Use DWARF_VMA_FMT to report error.
893         (READ_SLEB): Likewise.
894
895 2017-06-21  Nick Clifton  <nickc@redhat.com>
896
897         PR binutils/21648
898         * dwarf.c (LEB): Rename to SKIP_ULEB and READ_ULEB.  Add check for
899         reading a value that is too big for the containing variable.
900         (SLEB): Rename to SKIP_SLEB and READ_SLEB.  Add similar check.
901         Replace uses of LEB and SLEB with appropriate new macro.
902         (display_debug_frames): Use an unsigned int for the 'reg'
903         variable.  Use a signed long for the 'l' variable.
904
905 2017-06-20  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
906
907         * readelf.c (get_s390_segment_type): Add support for the new
908         segment type PT_S390_PGSTE.
909         (get_segment_type): Call get_s390_segment_type.
910
911 2017-06-19  Nick Clifton  <nickc@redhat.com>
912
913         PR binutils/21619
914         * objdump.c (disassemble_bytes): Check that there is sufficient
915         data available before attempting to display it.
916
917 2017-06-06  Simon Marchi  <simon.marchi@ericsson.com>
918
919         * sysinfo.y: Free memory allocated by token NAME.
920
921 2017-05-30  Anton Kolesov  <anton.kolesov@synopsys.com>
922
923         * doc/binutils.texi: Document new cpu=... disassembler options for ARC.
924
925 2017-05-30  H.J. Lu  <hongjiu.lu@intel.com>
926
927         PR binutils/21519
928         * objdump.c (dump_relocs_in_section): Replace get_file_size
929         with bfd_get_file_size to get archive element size.
930         * testsuite/binutils-all/objdump.exp (test_objdump_f): New
931         proc.
932         (test_objdump_h): Likewise.
933         (test_objdump_t): Likewise.
934         (test_objdump_r): Likewise.
935         (test_objdump_s): Likewise.
936         Add objdump tests on archive.
937
938 2017-05-24  Yao Qi  <yao.qi@linaro.org>
939
940         * objdump.c (disassemble_data): Caller update.
941
942 2017-05-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
943
944         * objcopy.c (merge_gnu_build_notes): Remove workaround that
945         prevented deleting relocations in duplicated notes in mips64 and
946         sparc.
947
948 2017-05-19  Maciej W. Rozycki  <macro@imgtec.com>
949
950         * testsuite/binutils-all/mips/mips-note-2.d: New test.
951         * testsuite/binutils-all/mips/mips-note-2r.d: New test.
952         * testsuite/binutils-all/mips/mips-note-2-n32.d: New test.
953         * testsuite/binutils-all/mips/mips-note-2-n64.d: New test.
954         * testsuite/binutils-all/mips/mips-note-2r-n32.d: New test.
955         * testsuite/binutils-all/mips/mips-note-2r-n64.d: New test.
956         * testsuite/binutils-all/mips/mips.exp: Define `has_newabi'.
957         Run the new tests.
958
959 2017-05-19  Maciej W. Rozycki  <macro@imgtec.com>
960
961         * testsuite/lib/utils-lib.exp (run_dump_test): Handle the `dump'
962         option.
963
964 2017-05-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
965
966         * NEWS: Mention the SPARC M8 support.
967
968 2017-05-19  Maciej W. Rozycki  <macro@imgtec.com>
969
970         * testsuite/binutils-all/mips/mips.exp: Bail out right away if
971         non-ELF.
972
973 2017-05-18  Alan Modra  <amodra@gmail.com>
974
975         * strings.c: Don't compare boolean values against TRUE or FALSE.
976
977 2017-05-15  Jeff Law  <law@redhat.com>
978
979         * readelf.c (display_arc_attribute): Avoid implicit fallthru.
980
981 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
982
983         * testsuite/binutils-all/mips/mips16-undecoded.d: Add `-mips3'
984         to `as' flags.
985         * testsuite/binutils-all/mips/mips16e2-undecoded.d: New test.
986         * testsuite/binutils-all/mips/mips16e2-extend-insn.d: New test.
987         * testsuite/binutils-all/mips/mips16-undecoded.s: Remove
988         `.module mips3'.
989         * testsuite/binutils-all/mips/mips.exp: Run the new tests.
990
991 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
992
993         * readelf.c (print_mips_ases): Handle MIPS16e2 ASE.
994         * NEWS: Mention MIPS16e2 ASE support.
995
996 2017-05-12  Maciej W. Rozycki  <macro@imgtec.com>
997
998         * testsuite/binutils-all/mips/mips16-extend-insn.d: Adjust BREAK
999         and SDBBP disassembly.
1000
1001 2017-05-10  Maciej W. Rozycki  <macro@imgtec.com>
1002
1003         * testsuite/binutils-all/mips/mips.exp: Define `tempfile' and
1004         `copyfile' variables.
1005
1006 2017-05-10  Claudiu Zissulescu  <claziss@synopsys.com>
1007
1008         * readelf.c (decode_ARC_machine_flags): Recognize OSABI v4.
1009         (get_arc_section_type_name): New function.
1010         (get_section_type_name): Use the above function.
1011         (display_arc_attribute): New function.
1012         (process_arc_specific): Likewise.
1013         (process_arch_specific): Handle ARC specific information.
1014
1015 2017-05-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1016
1017         * MAINTAINERS (SH): Remove myself as SH maintainer.
1018
1019 2017-05-02  H.J. Lu  <hongjiu.lu@intel.com>
1020
1021         * objcopy.c (merge_gnu_build_notes): Cast relcount to unsigned
1022         long when comparing with sec->reloc_count.
1023
1024 2017-05-02  Nick Clifton  <nickc@redhat.com>
1025
1026         * objcopy.c (merge_gnu_build_notes): Disable merge if there are
1027         more internal relocs than external relocs.
1028
1029 2017-05-02  Maciej W. Rozycki  <macro@imgtec.com>
1030
1031         * testsuite/binutils-all/mips/mips16-undecoded.d: Adjust the
1032         disassembly of PC-relative LA and LW synthetic instructions.
1033
1034 2017-05-02  Nick Clifton  <nickc@redhat.com>
1035
1036         PR 21440
1037         * objdump.c (dump_relocs_in_section): Check for an excessive
1038         number of relocs before attempting to dump them.
1039
1040 2017-05-01  Alan Modra  <amodra@gmail.com>
1041
1042         * objcopy.c (merge_gnu_build_notes): Correct code deleting
1043         relocs.
1044
1045 2017-04-28  Nick Clifton  <nickc@redhat.com>
1046
1047         PR binutils/21439
1048         * readelf.c (print_gnu_build_attribute_name): Allow for an empty
1049         name field.
1050
1051 2017-04-28  Nick Clifton  <nickc@redhat.com>
1052
1053         PR binutils/21437
1054         * readelf.c (process_version_sections): Check for underflow when
1055         computing the start address of the auxillary version data.
1056
1057 2017-04-28  Nick Clifton  <nickc@redhat.com>
1058
1059         PR binutils/21438
1060         * dwarf.c (process_extended_line_op): Do not assume that the
1061         string extracted from the section is NUL terminated.
1062         (fetch_indirect_string): If the string retrieved from the section
1063         is not NUL terminated, return an error message.
1064         (fetch_indirect_line_string): Likewise.
1065         (fetch_indexed_string): Likewise.
1066
1067 2017-04-26  Nick Clifton  <nickc@redhat.com>
1068
1069         PR binutils/21433
1070         * bucomm.c (get_file_size): Return -1 if file_name is NULL.
1071         * ar.c (main): Fail with usage() invocation if no file names are
1072         provided.
1073
1074 2017-04-26  Nick Clifton  <nickc@redhat.com>
1075
1076         * readelf.c (process_section_headers): Warn about overlarge
1077         sections.
1078         (print_gnu_build_attribute_name): Print the number of unrecognised
1079         note types.  Fix formatting in the presence of errors.
1080         (testsuite/binutils-all/note-2-32.s): Fix encoding of numeric notes.
1081         (testsuite/binutils-all/note-2-64.s): Likewise.
1082
1083 2017-04-26  Maciej W. Rozycki  <macro@imgtec.com>
1084
1085         * readelf.c (process_mips_specific): Add static GOT support.
1086
1087 2017-04-25  Maciej W. Rozycki  <macro@imgtec.com>
1088
1089         * readelf.c (process_mips_specific): Remove error reporting from
1090         GOT[1] processing.
1091
1092 2017-04-25  Maciej W. Rozycki  <macro@imgtec.com>
1093
1094         * readelf.c (process_mips_specific): Remove null GOT data check.
1095
1096 2017-04-25  Maciej W. Rozycki  <macro@imgtec.com>
1097
1098         * testsuite/binutils-all/mips/mips16-alias.d: New test.
1099         * testsuite/binutils-all/mips/mips16-noalias.d: New test.
1100         * testsuite/binutils-all/mips/mips16-alias.s: New test source.
1101         * testsuite/binutils-all/mips/mips.exp: Run the new tests.
1102
1103 2017-04-23  Alan Modra  <amodra@gmail.com>
1104
1105         PR 21418
1106         * ar.c (main): Check -a, -b, -i and -N args are given.
1107
1108 2017-04-23  Alan Modra  <amodra@gmail.com>
1109
1110         PR 21417
1111         * ar.c (main): Check that an archive file is given after options.
1112
1113 2017-04-23  Alan Modra  <amodra@gmail.com>
1114
1115         PR 21415
1116         * objdump.c (disassemble_section): Check bfd_get_section_contents
1117         status.
1118
1119 2017-04-23  Alan Modra  <amodra@gmail.com>
1120
1121         PR 21408
1122         * dwarf.c (display_debug_lines_decoded): Don't segfault on NULL
1123         file_table.
1124
1125 2017-04-21  Nick Clifton  <nickc@redhat.com>
1126
1127         PR binutils/21378
1128         * readelf.c (print_gnu_build_attribute_name): Check for an
1129         overlarge name field.
1130
1131 2017-04-13  Nick Clifton  <nickc@redhat.com>
1132
1133         PR binutils/21379
1134         * readelf.c (process_dynamic_section): Detect over large section
1135         offsets in the DT_SYMTAB entry.
1136
1137 2017-04-13  Nick Clifton  <nickc@redhat.com>
1138
1139         PR binutils/21345
1140         * readelf.c (process_mips_specific): Catch an unfeasible memory
1141         allocation before it happens and print a suitable error message.
1142
1143 2017-04-13  Nick Clifton  <nickc@redhat.com>
1144
1145         * objcopy.c: Add --no-merge-notes option to disable note merging.
1146         Add --[no-]merge-notes option to strip, and enable it by default.
1147         (num_bytes): New function.
1148         (merge_gnu_build_notes): Add code to merge stack size notes.
1149         * binutils.texi: Update strip and objcopy documentation.
1150         * readelf.c (print_gnu_build_attribute_name): Use defined
1151         constants for note types.
1152
1153 2017-04-10  John Delsignor  <john.delsignore@roguewave.com>
1154
1155         PR binutils/21319
1156         * dwarf.c (display_gdb_index): Correct test for a corrupt address
1157         table size.
1158
1159 2017-04-05  Jiong Wang  <jiong.wang@arm.com>
1160
1161         * objcopy.c (struct redefine_node): Delete the field "next".
1162         (redefine_sym_list): Deleted.
1163         (redefine_specific_htab): New hash table.
1164         (redefine_specific_reverse_htab): Likewise.
1165         (eq_string_redefnode): New function.
1166         (htab_hash_redefnode): Likewise.
1167         (create_symbol2redef_htab): Likewise.
1168         (add_specific_symbol_node): Likewise.
1169         (create_symbol_htabs): Create redefine_specific_htab and
1170         redefine_specific_reverse_htab.
1171         (lookup_sym_redefinition): Use hash table instead of list.
1172         (redefine_list_append): Likewise, and rename to add_redefine_and_check.
1173         (copy_main): Use redefine_specific_htab instead of redefine_sym_list.
1174         Update comments.
1175
1176 2017-04-04  H.J. Lu  <hongjiu.lu@intel.com>
1177
1178         * NEWS: Mention support for ELF SHF_GNU_MBIND and
1179         PT_GNU_MBIND_XXX.
1180         * readelf.c (get_segment_type): Handle PT_GNU_MBIND_XXX.
1181         (get_elf_section_flags): Handle SHF_GNU_MBIND.
1182         (process_section_headers): Likewise.
1183         * testsuite/binutils-all/mbind1.s: New file.
1184         * testsuite/binutils-all/objcopy.exp: Run readelf test on
1185         mbind1.s.
1186
1187 2017-04-03  Nick Clifton  <nickc@redhat.com>
1188
1189         PR binutils/21345
1190         * readelf.c (get_program_headers): Check for there being too many
1191         program headers before attempting to allocate space for them.
1192
1193 2017-04-03  Nick Clifton  <nickc@redhat.com>
1194
1195         PR binutils/21344
1196         * readelf.c (process_mips_specific): Check for an out of range GOT
1197         entry before reading the module pointer.
1198
1199 2017-04-03  Nick Clifton  <nickc@redhat.com>
1200
1201         PR binutils/21343
1202         * readelf.c (get_unwind_section_word): Fix snafu checking for
1203         invalid word offsets in ARM unwind information.
1204
1205 2017-03-31  Pip Cet  <pipcet@gmail.com>
1206
1207         * NEWS: Use "WebAssembly" consistently.
1208         * testsuite/binutils-all/wasm32/wasm32.exp: Fix copyright notice.
1209
1210 2017-03-30  Pip Cet  <pipcet@gmail.com>
1211
1212         * readelf.c: Add support for wasm32 ELF format WebAssembly files.
1213         (guess_is_rela): Likewise.
1214         (dump_relocations): Likewise.
1215         (is_32bit_abs_reloc): Likewise.
1216         (is_none_reloc_): Likewise.
1217         * NEWS: Mention the new support.
1218         * testsuite/lib/binutils-common.exp (is_elf_format): Mark wasm32
1219         as ELF target.
1220         (supports_gnu_unique): Mark wasm32 as supporting STB_GNU_UNIQUE.
1221         * testsuite/binutils-all/nm.exp: Mark wasm32 as requiring .size annotations.
1222         * testsuite/binutils-all/wasm32: New directory.
1223         * testsuite/binutils-all/wasm32/create-wasm.d: New file.
1224         * testsuite/binutils-all/wasm32/create-wasm.s: Likewise.
1225         * testsuite/binutils-all/wasm32/custom-section.d: Likewise.
1226         * testsuite/binutils-all/wasm32/custom-section.s: Likewise.
1227         * testsuite/binutils-all/wasm32/invalid-wasm-1.d: Likewise.
1228         * testsuite/binutils-all/wasm32/invalid-wasm-1.s: Likewise.
1229         * testsuite/binutils-all/wasm32/long-sections.d: Likewise.
1230         * testsuite/binutils-all/wasm32/long-sections.s: Likewise.
1231         * testsuite/binutils-all/wasm32/parse-wasm.d: Likewise.
1232         * testsuite/binutils-all/wasm32/parse-wasm.s: Likewise.
1233         * testsuite/binutils-all/wasm32/parse-wasm-2.d: Likewise.
1234         * testsuite/binutils-all/wasm32/parse-wasm-2.s: Likewise.
1235         * testsuite/binutils-all/wasm32/prepared-section.d: Likewise.
1236         * testsuite/binutils-all/wasm32/prepared-section.s: Likewise.
1237         * testsuite/binutils-all/wasm32/wasm32.exp: New file, run tests.
1238
1239 2017-03-29  Alan Modra  <amodra@gmail.com>
1240
1241         * doc/binutils.texi (objdump): Document PowerPC -M options.
1242
1243 2017-03-21  Andi Kleen  <ak@linux.intel.com>
1244
1245         * objdump.c (unwind_inlines): Add.
1246         (option_values): Add OPTION_INLINES.
1247         (show_line): Unwind inlines if requested.
1248         (main): Parse OPTION_INLINES.
1249         (usage): Document --inlines.
1250         * doc/binutils.texi: Document --inlines.
1251         * NEWS: Likewise.
1252
1253 2017-03-21  Nick Clifton  <nickc@redhat.com>
1254
1255         * readelf.c (print_gnu_build_attribute_name): Allow stack
1256         protection notes to contain numeric values.  Use a colon rather
1257         than a space to separate a string name from its values.  Decode
1258         the numeric value of a stack protection note.
1259         * objcopy.c (merge_gnu_build_notes): Allow version notes to
1260         contain extra text after the protocol version number.
1261
1262 2017-03-20  Mark Wielaard  <mark@klomp.org>
1263
1264         * readelf.c (process_program_headers): Move dynamic_addr check
1265         after .dynamic section cross check.
1266
1267 2017-03-17  Nick Clifton  <nickc@redhat.com>
1268
1269         * readelf.c (print_gnu_build_attribute_name): Fix off by one error
1270         printing the value for a build note with an ascii name.
1271
1272 2017-03-16  Nick Clifton  <nickc@redhat.com>
1273
1274         * readelf.c (print_gnu_build_attribute_name): Add support for
1275         GNU_BUILD_ATTRIBUTE_SHORT_ENUM.
1276
1277 2017-03-14  Nick Clifton  <nickc@redhat.com>
1278
1279         * readelf.c (print_gnu_build_attribute_description): Move symbol
1280         printing code to...
1281         (print_symbol_for_build_attribute): New function.  ...here.
1282         Add to find the best symbol to associate with an OPEN note.
1283         Add code to cache the symbol table and string table, so that they
1284         are not loaded every time a note is displayed.
1285         * testsuite/binutils-all/note-2-32.s: Add a function symbol.
1286         * testsuite/binutils-all/note-2-64.s: Likewise.
1287         * testsuite/binutils-all/note-2-32.d: Update expected note output.
1288         * testsuite/binutils-all/note-2-64.d: Likewise.
1289
1290 2017-03-13  Alan Modra  <amodra@gmail.com>
1291             Taeung Song <treeze.taeung@gmail.com>
1292
1293         * objdump.c (update_source_path): Add abfd param.  Add struct
1294         stat var.  Pass to try_print_file_open.  Warn if source is more
1295         recent than object.
1296         (try_print_file_open, slurp_file): Add struct stat param to
1297         return fstat.
1298         (show_line): Call update_source_path with bfd.
1299
1300 2017-03-10  Chia-Hao Lo  <fcamel@gmail.com>
1301
1302         PR binutils/21235
1303         * objdump.c (main): Set do_wide with --wide.
1304
1305 2017-03-10  Nick Clifton  <nickc@redhat.com>
1306
1307         * readelf.c (get_machine_name): Rearrange switch table in order of
1308         increasing machine number.  Add missing entries.
1309
1310 2017-03-08  H.J. Lu  <hongjiu.lu@intel.com>
1311
1312         PR binutils/21231
1313         * readelf.c (decode_x86_isa): Change argument to unsigned int.
1314         (print_gnu_property_note): Retrieve property type and datasz as
1315         4-byte integer.  Consolidate property datasz check.  Check
1316         GNU_PROPERTY_LOPROC and GNU_PROPERTY_LOUSER.
1317         * testsuite/binutils-all/i386/pr21231a.d: New file.
1318         * testsuite/binutils-all/i386/pr21231a.s: Likewise.
1319         * testsuite/binutils-all/i386/pr21231b.d: Likewise.
1320         * testsuite/binutils-all/i386/pr21231b.s: Likewise.
1321         * testsuite/binutils-all/x86-64/pr21231a.d: Likewise.
1322         * testsuite/binutils-all/x86-64/pr21231a.s: Likewise.
1323         * testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
1324         * testsuite/binutils-all/x86-64/pr21231b.s: Likewise.
1325
1326 2017-03-06  Nick Clifton  <nickc@redhat.com>
1327
1328         * readelf.c (print_gnu_build_attribute_name): Read byte values
1329         from the name string as unsigned bytes.
1330         (process_notes_at): Use memcpy to copy an unterminated name
1331         string.
1332
1333 2017-03-06  Sam Thursfield  <sam.thursfield@codethink.co.uk>
1334
1335         * configure.ac (AC_CHECK_DECLS): Add asprintf.
1336         * config.in: Regenerate.
1337         * configure: Regenerate.
1338
1339 2017-03-02  Nick Clifton  <nickc@redhat.com>
1340
1341         * readelf.c (print_gnu_build_attribute_description): Use global
1342         symbols for OPEN attributes if at all possible.
1343         * objcopy.c (is_merged_note_section): Support build note sections
1344         without the SHF_GNU_BUILD_NOTE section flag set.
1345
1346 2017-03-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
1347
1348         * dwarf.c (debug_displays_assert): New static assertion.
1349
1350 2017-03-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
1351
1352         * dwarf.h (enum dwarf_section_display_enum): Add loclists and rnglists.
1353
1354 2017-03-01  Nick Clifton  <nickc@redhat.com>
1355
1356         * readelf.c (get_note_type): Add support for GNU_BUILD_NOTEs.
1357         (get_gnu_elf_note_type): Add support for GNU_PROPERTY_NOTEs.
1358         (decode_x86_isa): New function.
1359         (print_gnu_property_note): New function.
1360         (print_gnu_note): Handle GNU_PROPERTY_NOTEs.
1361         (print_gnu_build_attribute_description): New function.
1362         (print_gnu_build_attribute_name): New function.
1363         (process_note): Add support for GNU_BUILD_NOTEs.
1364         * objcopy.c (--merge-notes): New command line option.
1365         (copy_options): Add merge-notes.
1366         (copy_usage): Likewise.
1367         (is_merge_note_section): New function.
1368         (merge_gnu_build_notes): New function.
1369         (copy_object): Merge note sections if asked to do so.
1370         (skip_section): Add skip_copy parameter.  Add support for skipping
1371         merged note sections.
1372         (copy_relocations_in_section): Update call to skip_section.
1373         (copy_section): Likewise.
1374         (copy_main): Add support for merge-notes option.
1375         * doc/binutils.texi: Document the new option to objcopy.
1376         * NEWS: Mention the new feature.
1377         * testsuite/binutils-all/note-2-32.d: New test.  Checks note
1378         merging on 32-bit targets.
1379         * testsuite/binutils-all/note-2-32.s: New test source file.
1380         * testsuite/binutils-all/note-2-64.d: New test.  Like note-2-32.d
1381         but for 64-bit targets.
1382         * testsuite/binutils-all/note-2-64.s: New test source file.
1383         * testsuite/binutils-all/objcopy.exp: Run the new test.
1384
1385 2017-02-28  Peter Bergner  <bergner@vnet.ibm.com>
1386
1387         * objdump.c (main): Use remove_whitespace_and_extra_commas.
1388
1389 2017-02-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
1390
1391         Fix compilation with GCC 4.4.7.
1392         * dwarf.c (display_loclists_list, display_debug_rnglists_list):
1393         Initialize begin and end.
1394
1395 2017-02-25  Alan Modra  <amodra@gmail.com>
1396
1397         * testsuite/binutils-all/dw5.S: Replace .string with .asciz.
1398         Support hpux .comm variant.
1399         * testsuite/binutils-all/readelf.exp: Define HPUX when assembling
1400         dw5 test for hppa64-hpux.
1401
1402 2017-02-24  Nick Clifton  <nickc@redhat.com>
1403
1404         * readelf.c (show_name, do_dynamic, do_syms, do_dyn_syms,
1405         (do_reloc, do_sections, do_section_groups, do_section_details,
1406         (do_segments, do_unwind, do_using_dynamic, do_header, do_dump,
1407         (do_version, do_histogram, do_debugging, do_arch, do_notes,
1408         (do_archive_index, is_32bit_elf, decompress_dumps): Use
1409         bfd_boolean type.
1410         (parse_args): Treat the do_* variables as booleans.
1411         (print_vma): Return an unsigned int.
1412         (print_symbol): Change width parameter to signed int.
1413         (is_ia64_vms): Change return type to bfd_boolean.
1414         (guess_is_rela): Likewise.
1415         (slurp_rela_relocs): Likewise.
1416         (slurp_rel_relocs): Likewise.
1417         (dump_relocations): Likewise.
1418         (process_file_header): Likewise.
1419         (get_program_headers): Likewise.
1420         (process_program_headers): Likewise.
1421         (process_section_headers): Likewise.
1422         (process_section_groups): Likewise.
1423         (dump_ia64_vms_dynamic_fixups): Likewise.
1424         (dump_ia64_vms_dynamic_relocs): Likewise.
1425         (process_ia64_vms_dynamic_relocs): Likewise.
1426         (process_relocs): Likewise.
1427         (dump_ia64_unwind): Likewise.
1428         (ia64_process_unwind): Likewise.
1429         (dump_hppa_unwind): Likewise.
1430         (slurp_hppa_unwind_table): Likewise.
1431         (hppa_process_unwind): Likewise.
1432         (decode_arm_unwind_bytecode): Likewise.
1433         (decode_tic6x_unwind_bytecode): Likewise.
1434         (decode_arm_unwind): Likewise.
1435         (dump_arm_unwind): Likewise.
1436         (arm_process_unwind): Likewise.
1437         (process_unwind): Likewise.
1438         (get_32bit_dynamic_section): Likewise.
1439         (get_64bit_dynamic_section): Likewise.
1440         (process_dynamic_section): Likewise.
1441         (process_version_sections): Likewise.
1442         (process_symbol_table): Likewise.
1443         (process_syminfo): Likewise.
1444         (apply_relocations): Likewise.
1445         (disassemble_section): Likewise.
1446         (dump_section_as_strings): Likewise.
1447         (dump_section_as_bytes): Likewise.
1448         (load_specific_debug_section): Likewise.
1449         (load_debug_section): Likewise.
1450         (display_debug_section): Likewise.
1451         (process_section_contents): Likewise.
1452         (process_attributes): Likewise.
1453         (process_nds32_specific): Likewise.
1454         (process_gnu_liblist): Likewise.
1455         (print_core_note): Likewise.
1456         (print_gnu_note): Likewise.
1457         (print_v850_note): Likewise.
1458         (process_netbsd_elf_note): Likewise.
1459         (print_stapsdt_note): Likewise.
1460         (print_ia64_vms_note): Likewise.
1461         (process_note): Likewise.
1462         (process_notes_at): Likewise.
1463         (process_corefile_note_segments): Likewise.
1464         (process_v850_notes): Likewise.
1465         (process_note_sections): Likewise.
1466         (process_notes): Likewise.
1467         (process_arch_specific): Likewise.
1468         (get_file_header): Likewise.
1469         (process_object): Likewise.
1470         (process_archive): Likewise.
1471         (process_file): Likewise.
1472         (section_subset): Make static.
1473         (get_mips_reg_size): Return a signed integer.
1474         (process_object): Reverse the logic of the return value.
1475         (process_archive): Likewise.
1476         (process_file): Likewise.
1477         (process_program_headers): Fix snafu - if the program headers are
1478         not available then this is not a cause to fail.
1479         (process_corefile_note_segments): Likewise.
1480
1481 2017-02-24  Maciej W. Rozycki  <macro@imgtec.com>
1482
1483         * readelf.c (get_ver_flags): Tidy the formatting of the string
1484         returned
1485
1486 2017-02-24  Maciej W. Rozycki  <macro@imgtec.com>
1487
1488         * readelf.c (process_version_sections) <SHT_GNU_verdef>: Make
1489         `isum' unsigned.
1490         <SHT_GNU_verneed>: Likewise.
1491
1492 2017-02-24  Maciej W. Rozycki  <macro@imgtec.com>
1493
1494         * readelf.c (process_version_sections) <SHT_GNU_verdef>: Limit
1495         the number of entries processed by the section size.  Don't
1496         break out of the loop if `ent.vd_next' is 0.
1497
1498 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1499
1500         * testsuite/binutils-all/dw5.S: New file.
1501         * testsuite/binutils-all/dw5.W: New file.
1502         * testsuite/binutils-all/readelf.exp (readelf -wiaoRlL): New test.
1503
1504 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1505
1506         * dwarf.c (read_and_display_attr_value): Support DW_FORM_data16.
1507
1508 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1509
1510         * dwarf.c (display_debug_macro): Support DWARF-5.  Rename
1511         DW_MACRO_GNU_*.
1512
1513 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1514
1515         * dwarf.c (decode_location_expression): Support DW_OP_implicit_pointer,
1516         DW_OP_const_type, DW_OP_regval_type, DW_OP_deref_type, DW_OP_convert
1517         and DW_OP_reinterpret.
1518         (read_and_display_attr_value): Support DW_AT_call_value,
1519         DW_AT_call_data_value, DW_AT_call_target and
1520         DW_AT_call_target_clobbered.
1521
1522 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1523
1524         * dwarf.c (fetch_indirect_line_string): New function.
1525         (abbrev_attr): New field implicit_const.
1526         (add_abbrev_attr): New parameter implicit_const.
1527         (process_abbrev_section): Support DW_FORM_implicit_const.
1528         (decode_location_expression): Support DW_OP_entry_value.
1529         (read_and_display_attr_value): Add parameter implicit_const.  Support
1530         DW_FORM_line_strp and DW_FORM_implicit_const.
1531         (read_and_display_attr): Add parameter implicit_const.
1532         (process_debug_info): Support line_str and DWARF-5.
1533         (read_debug_line_header): Support DWARF-5.
1534         (display_formatted_table): New function.
1535         (display_debug_lines_raw): New parameter file.  Support DWARF-5.
1536         (display_debug_lines_decoded): New parameter fileptr.  Support DWARF-5.
1537         (display_debug_lines): Pass file parameter.
1538         (display_debug_macro): Update read_and_display_attr_value caller.
1539         (display_debug_abbrev): Support DW_FORM_implicit_const.
1540         (display_loclists_list): New function.
1541         (display_loc_list): Support .debug_loclists.
1542         (display_debug_ranges_list): New function from display_debug_ranges.
1543         (display_debug_rnglists_list): New function.
1544         (display_debug_ranges): Support .debug_rnglists.
1545         (debug_displays): Add .debug_line_str, .debug_loclists and
1546         .debug_rnglists.
1547         * dwarf.h: Include dwarf2.h
1548         (DWARF2_Internal_LineInfo): Add li_offset_size.
1549         (DWARF2_Internal_CompUnit): Add cu_unit_type.
1550         (enum dwarf_section_display_enum): Add line_str.
1551         * readelf.c (process_section_headers): Add rnglists and loclists.
1552
1553 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1554
1555         * dwarf.c (display_block): Add parameter delimiter.
1556         (decode_location_expression): Update display_block callers.
1557         (read_and_display_attr_value): Add parameter delimiter.
1558         (read_and_display_attr, display_debug_macro): Update
1559         read_and_display_attr_value caller.
1560
1561 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1562
1563         * dwarf.c (display_loc_list): Use dwarf_vma for offset, base_address
1564         and off.
1565         (display_loc_list_dwo): Use dwarf_vma for offset.
1566         (display_debug_loc): Use dwarf_vma for offset, base_address.
1567         (struct range_entry, range_entry_compar): Use dwarf_vma for
1568         ranges_offset.
1569         (display_debug_ranges): Use dwarf_vma for ranges_offset, offset and
1570         base_address.
1571
1572 2017-02-23  Nick Clifton  <nickc@redhat.com>
1573
1574         * readelf.c (display_tag_value): Use an explicit signed type for
1575         the tag parameter.
1576         (display_gnu_attributes): Use an unsigned integer type for
1577         attribute tags.
1578         (display_power_gnu_attribute): Likewise.
1579         (display_s390_gnu_attribute): Likewise.
1580         (display_sparc_hwcaps): Likewise.
1581         (display_sparc_hwcaps2): Likewise.
1582         (display_sparc_gnu_attribute): Likewise.
1583         (display_mips_gnu_attribute): Likewise.
1584         (display_tic6x_attribute): Likewise.
1585         (display_raw_attribute): Likewise.
1586         (process_attributes): Likewise.
1587         (process_arm_specific): Delete redundant function.
1588         (process_power_specific): Likewise.
1589         (process_s390_specific): Likewise.
1590         (process_sparc_specific): Likewise.
1591         (process_tic6x_specific): Likewise.
1592         (process_msp430x_specific): Likewise.
1593         (display_public_gnu_attributes): New function.  Displays known
1594         information about an unknown gnu attribute.
1595         (display_generic_attribute): New function.  Calls
1596         display_tag_value for non-nul tags.
1597         (process_arch_specific): Call process_attributes even for
1598         architectures not known to specifically support gnu attributes.
1599
1600 2017-02-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
1601
1602         * dwarf.c (decode_location_expression): Display also OP.
1603
1604 2017-02-22  Maciej W. Rozycki  <macro@imgtec.com>
1605
1606         * readelf.c (process_version_sections) <SHT_GNU_verdef>: Print a
1607         new line between the heading and the first version definition
1608         entry.
1609
1610 2017-02-20  Nick Clifton  <nickc@redhat.com>
1611
1612         PR binutils/21156
1613         * dwarf.c (cu_tu_indexes_read): Move into...
1614         (load_cu_tu_indexes): ... here.  Change the variable into
1615         tri-state.  Change the function into boolean, returning
1616         false if the indicies could not be loaded.
1617         (find_cu_tu_set): Return NULL if the indicies could not be
1618         loaded.
1619
1620 2017-02-17  Nick Clifton  <nickc@redhat.com>
1621
1622         PR binutils/21156
1623         * readelf.c (find_section_in_set): Test for invalid section
1624         indicies.
1625
1626 2017-02-17  Nick Clifton  <nickc@redhat.com>
1627
1628         * readelf.c (get_section_type_name): Add decoding of GNU section
1629         types.
1630
1631 2017-02-15  Nick Clifton  <nickc@redhat.com>
1632
1633         * MAINTAINERS: (MIPS, MN10300): Move Eric Christopher to Past
1634         Maintainers section.
1635
1636 2017-02-14  Nick Clifton  <nickc@redhat.com>
1637
1638         PR binutils/21159
1639         * readelf.c (dump_section_as_strings): Reset the start address if
1640         no decompression is perfromed.
1641         (dump_section_as_bytes): Likewise.
1642
1643 2017-02-14  Nick Clifton  <nickc@redhat.com>
1644
1645         PR binutils/21158
1646         * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or
1647         empty symbol name.
1648
1649 2017-02-14  Nick Clifton  <nickc@redhat.com>
1650
1651         PR binutils/21157
1652         * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE
1653         pairs.
1654         (parse_number): Exit early if passed an empty string.
1655
1656 2017-02-14  Nick Clifton  <nickc@redhat.com>
1657
1658         PR binutils/21155
1659         * readelf.c (IN_RANGE): New macro.  Tests for an address + offset
1660         being within a given range.
1661         (target_specific_reloc_handling): Use macro to test for underflow
1662         as well as overflow of reloc offset.
1663
1664 2017-02-13  Nick Clifton  <nickc@redhat.com>
1665
1666         PR binutils/21150
1667         * nm.c (file_symbol): Add test of string length before testing
1668         string characters.
1669
1670 2017-02-13  Nick Clifton  <nickc@redhat.com>
1671
1672         PR binutils/21135
1673         * readelf.c (dump_section_as_bytes): Handle the case where
1674         uncompress_section_contents returns false.
1675         (dump_section_as_bytes, load_specific_debug_section): Likewise.
1676
1677 2017-02-13  Nick Clifton  <nickc@redhat.com>
1678
1679         PR binutils/21149
1680         * readelf.c (get_compression_header): Add size parameter.  Check
1681         size against sizeof compression header before attempting to
1682         extract the header.
1683         (process_section_headers): Pass size to get_compression_header.
1684         (dump_section_as_strings): Likewise.
1685         (dump_section_as_bytes): Likewise.
1686         (load_specific_debug_section): Likewise.
1687
1688 2017-02-13  Nick Clifton  <nickc@redhat.com>
1689
1690         PR binutils/21148
1691         * readelf.c (process_version_sections): Include size of auxillary
1692         version information when checking for buffer overflow.
1693
1694 2017-02-13  Nick Clifton  <nickc@redhat.com>
1695
1696         PR binutils/21147
1697         * readelf.c (process_section_contents): Fix off by one error
1698         reporting un-dumped sections.
1699
1700 2017-02-13  Nick Clifton  <nickc@redhat.com>
1701
1702         PR binutils/21139
1703         * readelf.c (target_specific_reloc_handling): Add num_syms
1704         parameter.  Check for symbol table overflow before accessing
1705         symbol value.  If reloc pointer is NULL, discard all saved state.
1706         (apply_relocations): Pass num_syms to target_specific_reloc_handling.
1707         Call target_specific_reloc_handling with a NULL reloc pointer
1708         after processing all of the relocs.
1709
1710 2017-02-13  Nick Clifton  <nickc@redhat.com>
1711
1712         PR binutils/21137
1713         * readelf.c (target_specific_reloc_handling): Add end parameter.
1714         Check for buffer overflow before writing relocated values.
1715         (apply_relocations): Pass end to target_specific_reloc_handling.
1716
1717 2017-01-27  Dilyan Palauzov  <dilyan.palauzov@aegee.org>
1718             Nick Clifton  <nickc@redhat.com>
1719
1720         PR 20343
1721         * doc/binutils.texi (ar): Extend documentation of the --plugin
1722         option.  Include a description of where the plugins should be
1723         located.
1724         (nm): Likewise.
1725
1726 2017-01-23  Nick Clifton  <nickc@redhat.com>
1727
1728         * MAINTAINERS: Add Bernd to Past Maintainers section.
1729         (SCORE): Remove Mei Ligang as maintainer.  Add to Past Maintainers
1730         section.
1731
1732 2017-01-23  Bernd Schmidt  <bschmidt@redhat.com>
1733
1734         * MAINTAINERS (BFIN): Remove myself as Blackfin maintainer.
1735
1736 2017-01-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1737
1738         * objdump.c (dump_section_header): Extract max section name length
1739         from data parameter, use this when formatting output.
1740         (find_longest_section_name): New function.
1741         (dump_headers): Calculate longest section name when in wide mode,
1742         reformat to unify printing of header line.
1743
1744 2017-01-18  Bernhard Rosenkranzer  <bero@lindev.ch>
1745
1746         PR 21059
1747         * arlex.l: Support processing with flex 2.6.3.
1748         * deflex.l: Likewise.
1749
1750 2017-01-17  Dmitry Timoshkov  <dmitry@baikal.ru>
1751
1752         * resbin.c: Optional dialog control data immediately follows
1753         the control description without alignment.
1754         * testsuite/binutils-all/windres/controldata.rc: New test.
1755         source.
1756         * testsuite/binutils-all/windres/controldata.rsd: New test.
1757
1758 2017-01-12  Nick Clifton  <nickc@redhat.com>
1759
1760         PR binutils/20876
1761         * NEWS: Mention the new feature.
1762         * testsuite/binutils-all/objdump.exp (test_build_id_debuglink):
1763         New proc to test the location of separate debug info files using
1764         the build-id method.
1765
1766 2017-01-10  Nick Clifton  <nickc@redhat.com>
1767
1768         PR 21034
1769         * stabs.c (parse_stab_members): Fix thinko checking for g++
1770         version 1 stabs information.
1771
1772 2017-01-09  Nick Clifton  <nickc@redhat.com>
1773
1774         * objdump.c (display_file): Add new parameter 'last_file'.  If
1775         last_file is true, do not call bfd_close at the end of the
1776         function.
1777         (main): Set the value of the last_file parameter when calling
1778         display_file.
1779
1780 2017-01-09  Alan Modra  <amodra@gmail.com>
1781
1782         * readelf.c (process_section_headers): Correct .rel.dyn/.rela.dyn
1783         comment.
1784
1785 2017-01-06  Nick Clifton  <nickc@redhat.com>
1786
1787         * MAINTAINERS: Move Paul Brook to the Past Maintainers section.
1788
1789 2017-01-04  Dilan Palauzov  <dilyan.palauzov@aegee.org>
1790
1791         PR 20958
1792         * syslex.l (option): Add noyywrap
1793         (yywrap): Delete.
1794
1795 2017-01-02  Alan Modra  <amodra@gmail.com>
1796
1797         Update year range in copyright notice of all files.
1798
1799 For older changes see ChangeLog-2016
1800 \f
1801 Copyright (C) 2017 Free Software Foundation, Inc.
1802
1803 Copying and distribution of this file, with or without modification,
1804 are permitted in any medium without royalty provided the copyright
1805 notice and this notice are preserved.
1806
1807 Local Variables:
1808 mode: change-log
1809 left-margin: 8
1810 fill-column: 74
1811 version-control: never
1812 End: