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