1 2017-03-01 Nick Clifton <nickc@redhat.com>
3 * readelf.c (get_note_type): Add support for GNU_BUILD_NOTEs.
4 (get_gnu_elf_note_type): Add support for GNU_PROPERTY_NOTEs.
5 (decode_x86_isa): New function.
6 (print_gnu_property_note): New function.
7 (print_gnu_note): Handle GNU_PROPERTY_NOTEs.
8 (print_gnu_build_attribute_description): New function.
9 (print_gnu_build_attribute_name): New function.
10 (process_note): Add support for GNU_BUILD_NOTEs.
11 * objcopy.c (--merge-notes): New command line option.
12 (copy_options): Add merge-notes.
13 (copy_usage): Likewise.
14 (is_merge_note_section): New function.
15 (merge_gnu_build_notes): New function.
16 (copy_object): Merge note sections if asked to do so.
17 (skip_section): Add skip_copy parameter. Add support for skipping
19 (copy_relocations_in_section): Update call to skip_section.
20 (copy_section): Likewise.
21 (copy_main): Add support for merge-notes option.
22 * doc/binutils.texi: Document the new option to objcopy.
23 * NEWS: Mention the new feature.
24 * testsuite/binutils-all/note-2-32.d: New test. Checks note
25 merging on 32-bit targets.
26 * testsuite/binutils-all/note-2-32.s: New test source file.
27 * testsuite/binutils-all/note-2-64.d: New test. Like note-2-32.d
28 but for 64-bit targets.
29 * testsuite/binutils-all/note-2-64.s: New test source file.
30 * testsuite/binutils-all/objcopy.exp: Run the new test.
32 2017-02-28 Peter Bergner <bergner@vnet.ibm.com>
34 * objdump.c (main): Use remove_whitespace_and_extra_commas.
36 2017-02-27 Jan Kratochvil <jan.kratochvil@redhat.com>
38 Fix compilation with GCC 4.4.7.
39 * dwarf.c (display_loclists_list, display_debug_rnglists_list):
40 Initialize begin and end.
42 2017-02-25 Alan Modra <amodra@gmail.com>
44 * testsuite/binutils-all/dw5.S: Replace .string with .asciz.
45 Support hpux .comm variant.
46 * testsuite/binutils-all/readelf.exp: Define HPUX when assembling
47 dw5 test for hppa64-hpux.
49 2017-02-24 Nick Clifton <nickc@redhat.com>
51 * readelf.c (show_name, do_dynamic, do_syms, do_dyn_syms,
52 (do_reloc, do_sections, do_section_groups, do_section_details,
53 (do_segments, do_unwind, do_using_dynamic, do_header, do_dump,
54 (do_version, do_histogram, do_debugging, do_arch, do_notes,
55 (do_archive_index, is_32bit_elf, decompress_dumps): Use
57 (parse_args): Treat the do_* variables as booleans.
58 (print_vma): Return an unsigned int.
59 (print_symbol): Change width parameter to signed int.
60 (is_ia64_vms): Change return type to bfd_boolean.
61 (guess_is_rela): Likewise.
62 (slurp_rela_relocs): Likewise.
63 (slurp_rel_relocs): Likewise.
64 (dump_relocations): Likewise.
65 (process_file_header): Likewise.
66 (get_program_headers): Likewise.
67 (process_program_headers): Likewise.
68 (process_section_headers): Likewise.
69 (process_section_groups): Likewise.
70 (dump_ia64_vms_dynamic_fixups): Likewise.
71 (dump_ia64_vms_dynamic_relocs): Likewise.
72 (process_ia64_vms_dynamic_relocs): Likewise.
73 (process_relocs): Likewise.
74 (dump_ia64_unwind): Likewise.
75 (ia64_process_unwind): Likewise.
76 (dump_hppa_unwind): Likewise.
77 (slurp_hppa_unwind_table): Likewise.
78 (hppa_process_unwind): Likewise.
79 (decode_arm_unwind_bytecode): Likewise.
80 (decode_tic6x_unwind_bytecode): Likewise.
81 (decode_arm_unwind): Likewise.
82 (dump_arm_unwind): Likewise.
83 (arm_process_unwind): Likewise.
84 (process_unwind): Likewise.
85 (get_32bit_dynamic_section): Likewise.
86 (get_64bit_dynamic_section): Likewise.
87 (process_dynamic_section): Likewise.
88 (process_version_sections): Likewise.
89 (process_symbol_table): Likewise.
90 (process_syminfo): Likewise.
91 (apply_relocations): Likewise.
92 (disassemble_section): Likewise.
93 (dump_section_as_strings): Likewise.
94 (dump_section_as_bytes): Likewise.
95 (load_specific_debug_section): Likewise.
96 (load_debug_section): Likewise.
97 (display_debug_section): Likewise.
98 (process_section_contents): Likewise.
99 (process_attributes): Likewise.
100 (process_nds32_specific): Likewise.
101 (process_gnu_liblist): Likewise.
102 (print_core_note): Likewise.
103 (print_gnu_note): Likewise.
104 (print_v850_note): Likewise.
105 (process_netbsd_elf_note): Likewise.
106 (print_stapsdt_note): Likewise.
107 (print_ia64_vms_note): Likewise.
108 (process_note): Likewise.
109 (process_notes_at): Likewise.
110 (process_corefile_note_segments): Likewise.
111 (process_v850_notes): Likewise.
112 (process_note_sections): Likewise.
113 (process_notes): Likewise.
114 (process_arch_specific): Likewise.
115 (get_file_header): Likewise.
116 (process_object): Likewise.
117 (process_archive): Likewise.
118 (process_file): Likewise.
119 (section_subset): Make static.
120 (get_mips_reg_size): Return a signed integer.
121 (process_object): Reverse the logic of the return value.
122 (process_archive): Likewise.
123 (process_file): Likewise.
124 (process_program_headers): Fix snafu - if the program headers are
125 not available then this is not a cause to fail.
126 (process_corefile_note_segments): Likewise.
128 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
130 * readelf.c (get_ver_flags): Tidy the formatting of the string
133 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
135 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Make
137 <SHT_GNU_verneed>: Likewise.
139 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
141 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Limit
142 the number of entries processed by the section size. Don't
143 break out of the loop if `ent.vd_next' is 0.
145 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
147 * testsuite/binutils-all/dw5.S: New file.
148 * testsuite/binutils-all/dw5.W: New file.
149 * testsuite/binutils-all/readelf.exp (readelf -wiaoRlL): New test.
151 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
153 * dwarf.c (read_and_display_attr_value): Support DW_FORM_data16.
155 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
157 * dwarf.c (display_debug_macro): Support DWARF-5. Rename
160 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
162 * dwarf.c (decode_location_expression): Support DW_OP_implicit_pointer,
163 DW_OP_const_type, DW_OP_regval_type, DW_OP_deref_type, DW_OP_convert
164 and DW_OP_reinterpret.
165 (read_and_display_attr_value): Support DW_AT_call_value,
166 DW_AT_call_data_value, DW_AT_call_target and
167 DW_AT_call_target_clobbered.
169 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
171 * dwarf.c (fetch_indirect_line_string): New function.
172 (abbrev_attr): New field implicit_const.
173 (add_abbrev_attr): New parameter implicit_const.
174 (process_abbrev_section): Support DW_FORM_implicit_const.
175 (decode_location_expression): Support DW_OP_entry_value.
176 (read_and_display_attr_value): Add parameter implicit_const. Support
177 DW_FORM_line_strp and DW_FORM_implicit_const.
178 (read_and_display_attr): Add parameter implicit_const.
179 (process_debug_info): Support line_str and DWARF-5.
180 (read_debug_line_header): Support DWARF-5.
181 (display_formatted_table): New function.
182 (display_debug_lines_raw): New parameter file. Support DWARF-5.
183 (display_debug_lines_decoded): New parameter fileptr. Support DWARF-5.
184 (display_debug_lines): Pass file parameter.
185 (display_debug_macro): Update read_and_display_attr_value caller.
186 (display_debug_abbrev): Support DW_FORM_implicit_const.
187 (display_loclists_list): New function.
188 (display_loc_list): Support .debug_loclists.
189 (display_debug_ranges_list): New function from display_debug_ranges.
190 (display_debug_rnglists_list): New function.
191 (display_debug_ranges): Support .debug_rnglists.
192 (debug_displays): Add .debug_line_str, .debug_loclists and
194 * dwarf.h: Include dwarf2.h
195 (DWARF2_Internal_LineInfo): Add li_offset_size.
196 (DWARF2_Internal_CompUnit): Add cu_unit_type.
197 (enum dwarf_section_display_enum): Add line_str.
198 * readelf.c (process_section_headers): Add rnglists and loclists.
200 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
202 * dwarf.c (display_block): Add parameter delimiter.
203 (decode_location_expression): Update display_block callers.
204 (read_and_display_attr_value): Add parameter delimiter.
205 (read_and_display_attr, display_debug_macro): Update
206 read_and_display_attr_value caller.
208 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
210 * dwarf.c (display_loc_list): Use dwarf_vma for offset, base_address
212 (display_loc_list_dwo): Use dwarf_vma for offset.
213 (display_debug_loc): Use dwarf_vma for offset, base_address.
214 (struct range_entry, range_entry_compar): Use dwarf_vma for
216 (display_debug_ranges): Use dwarf_vma for ranges_offset, offset and
219 2017-02-23 Nick Clifton <nickc@redhat.com>
221 * readelf.c (display_tag_value): Use an explicit signed type for
223 (display_gnu_attributes): Use an unsigned integer type for
225 (display_power_gnu_attribute): Likewise.
226 (display_s390_gnu_attribute): Likewise.
227 (display_sparc_hwcaps): Likewise.
228 (display_sparc_hwcaps2): Likewise.
229 (display_sparc_gnu_attribute): Likewise.
230 (display_mips_gnu_attribute): Likewise.
231 (display_tic6x_attribute): Likewise.
232 (display_raw_attribute): Likewise.
233 (process_attributes): Likewise.
234 (process_arm_specific): Delete redundant function.
235 (process_power_specific): Likewise.
236 (process_s390_specific): Likewise.
237 (process_sparc_specific): Likewise.
238 (process_tic6x_specific): Likewise.
239 (process_msp430x_specific): Likewise.
240 (display_public_gnu_attributes): New function. Displays known
241 information about an unknown gnu attribute.
242 (display_generic_attribute): New function. Calls
243 display_tag_value for non-nul tags.
244 (process_arch_specific): Call process_attributes even for
245 architectures not known to specifically support gnu attributes.
247 2017-02-22 Jan Kratochvil <jan.kratochvil@redhat.com>
249 * dwarf.c (decode_location_expression): Display also OP.
251 2017-02-22 Maciej W. Rozycki <macro@imgtec.com>
253 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Print a
254 new line between the heading and the first version definition
257 2017-02-20 Nick Clifton <nickc@redhat.com>
260 * dwarf.c (cu_tu_indexes_read): Move into...
261 (load_cu_tu_indexes): ... here. Change the variable into
262 tri-state. Change the function into boolean, returning
263 false if the indicies could not be loaded.
264 (find_cu_tu_set): Return NULL if the indicies could not be
267 2017-02-17 Nick Clifton <nickc@redhat.com>
270 * readelf.c (find_section_in_set): Test for invalid section
273 2017-02-17 Nick Clifton <nickc@redhat.com>
275 * readelf.c (get_section_type_name): Add decoding of GNU section
278 2017-02-15 Nick Clifton <nickc@redhat.com>
280 * MAINTAINERS: (MIPS, MN10300): Move Eric Christopher to Past
283 2017-02-14 Nick Clifton <nickc@redhat.com>
286 * readelf.c (dump_section_as_strings): Reset the start address if
287 no decompression is perfromed.
288 (dump_section_as_bytes): Likewise.
290 2017-02-14 Nick Clifton <nickc@redhat.com>
293 * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or
296 2017-02-14 Nick Clifton <nickc@redhat.com>
299 * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE
301 (parse_number): Exit early if passed an empty string.
303 2017-02-14 Nick Clifton <nickc@redhat.com>
306 * readelf.c (IN_RANGE): New macro. Tests for an address + offset
307 being within a given range.
308 (target_specific_reloc_handling): Use macro to test for underflow
309 as well as overflow of reloc offset.
311 2017-02-13 Nick Clifton <nickc@redhat.com>
314 * nm.c (file_symbol): Add test of string length before testing
317 2017-02-13 Nick Clifton <nickc@redhat.com>
320 * readelf.c (dump_section_as_bytes): Handle the case where
321 uncompress_section_contents returns false.
322 (dump_section_as_bytes, load_specific_debug_section): Likewise.
324 2017-02-13 Nick Clifton <nickc@redhat.com>
327 * readelf.c (get_compression_header): Add size parameter. Check
328 size against sizeof compression header before attempting to
330 (process_section_headers): Pass size to get_compression_header.
331 (dump_section_as_strings): Likewise.
332 (dump_section_as_bytes): Likewise.
333 (load_specific_debug_section): Likewise.
335 2017-02-13 Nick Clifton <nickc@redhat.com>
338 * readelf.c (process_version_sections): Include size of auxillary
339 version information when checking for buffer overflow.
341 2017-02-13 Nick Clifton <nickc@redhat.com>
344 * readelf.c (process_section_contents): Fix off by one error
345 reporting un-dumped sections.
347 2017-02-13 Nick Clifton <nickc@redhat.com>
350 * readelf.c (target_specific_reloc_handling): Add num_syms
351 parameter. Check for symbol table overflow before accessing
352 symbol value. If reloc pointer is NULL, discard all saved state.
353 (apply_relocations): Pass num_syms to target_specific_reloc_handling.
354 Call target_specific_reloc_handling with a NULL reloc pointer
355 after processing all of the relocs.
357 2017-02-13 Nick Clifton <nickc@redhat.com>
360 * readelf.c (target_specific_reloc_handling): Add end parameter.
361 Check for buffer overflow before writing relocated values.
362 (apply_relocations): Pass end to target_specific_reloc_handling.
364 2017-01-27 Dilyan Palauzov <dilyan.palauzov@aegee.org>
365 Nick Clifton <nickc@redhat.com>
368 * doc/binutils.texi (ar): Extend documentation of the --plugin
369 option. Include a description of where the plugins should be
373 2017-01-23 Nick Clifton <nickc@redhat.com>
375 * MAINTAINERS: Add Bernd to Past Maintainers section.
376 (SCORE): Remove Mei Ligang as maintainer. Add to Past Maintainers
379 2017-01-23 Bernd Schmidt <bschmidt@redhat.com>
381 * MAINTAINERS (BFIN): Remove myself as Blackfin maintainer.
383 2017-01-20 Andrew Burgess <andrew.burgess@embecosm.com>
385 * objdump.c (dump_section_header): Extract max section name length
386 from data parameter, use this when formatting output.
387 (find_longest_section_name): New function.
388 (dump_headers): Calculate longest section name when in wide mode,
389 reformat to unify printing of header line.
391 2017-01-18 Bernhard Rosenkranzer <bero@lindev.ch>
394 * arlex.l: Support processing with flex 2.6.3.
395 * deflex.l: Likewise.
397 2017-01-17 Dmitry Timoshkov <dmitry@baikal.ru>
399 * resbin.c: Optional dialog control data immediately follows
400 the control description without alignment.
401 * testsuite/binutils-all/windres/controldata.rc: New test.
403 * testsuite/binutils-all/windres/controldata.rsd: New test.
405 2017-01-12 Nick Clifton <nickc@redhat.com>
408 * NEWS: Mention the new feature.
409 * testsuite/binutils-all/objdump.exp (test_build_id_debuglink):
410 New proc to test the location of separate debug info files using
413 2017-01-10 Nick Clifton <nickc@redhat.com>
416 * stabs.c (parse_stab_members): Fix thinko checking for g++
417 version 1 stabs information.
419 2017-01-09 Nick Clifton <nickc@redhat.com>
421 * objdump.c (display_file): Add new parameter 'last_file'. If
422 last_file is true, do not call bfd_close at the end of the
424 (main): Set the value of the last_file parameter when calling
427 2017-01-09 Alan Modra <amodra@gmail.com>
429 * readelf.c (process_section_headers): Correct .rel.dyn/.rela.dyn
432 2017-01-06 Nick Clifton <nickc@redhat.com>
434 * MAINTAINERS: Move Paul Brook to the Past Maintainers section.
436 2017-01-04 Dilan Palauzov <dilyan.palauzov@aegee.org>
439 * syslex.l (option): Add noyywrap
442 2017-01-02 Alan Modra <amodra@gmail.com>
444 Update year range in copyright notice of all files.
446 For older changes see ChangeLog-2016
448 Copyright (C) 2017 Free Software Foundation, Inc.
450 Copying and distribution of this file, with or without modification,
451 are permitted in any medium without royalty provided the copyright
452 notice and this notice are preserved.
458 version-control: never