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