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