1 2017-03-13 Alan Modra <amodra@gmail.com>
2 Taeung Song <treeze.taeung@gmail.com>
4 * objdump.c (update_source_path): Add abfd param. Add struct
5 stat var. Pass to try_print_file_open. Warn if source is more
7 (try_print_file_open, slurp_file): Add struct stat param to
9 (show_line): Call update_source_path with bfd.
11 2017-03-10 Chia-Hao Lo <fcamel@gmail.com>
14 * objdump.c (main): Set do_wide with --wide.
16 2017-03-10 Nick Clifton <nickc@redhat.com>
18 * readelf.c (get_machine_name): Rearrange switch table in order of
19 increasing machine number. Add missing entries.
21 2017-03-08 H.J. Lu <hongjiu.lu@intel.com>
24 * readelf.c (decode_x86_isa): Change argument to unsigned int.
25 (print_gnu_property_note): Retrieve property type and datasz as
26 4-byte integer. Consolidate property datasz check. Check
27 GNU_PROPERTY_LOPROC and GNU_PROPERTY_LOUSER.
28 * testsuite/binutils-all/i386/pr21231a.d: New file.
29 * testsuite/binutils-all/i386/pr21231a.s: Likewise.
30 * testsuite/binutils-all/i386/pr21231b.d: Likewise.
31 * testsuite/binutils-all/i386/pr21231b.s: Likewise.
32 * testsuite/binutils-all/x86-64/pr21231a.d: Likewise.
33 * testsuite/binutils-all/x86-64/pr21231a.s: Likewise.
34 * testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
35 * testsuite/binutils-all/x86-64/pr21231b.s: Likewise.
37 2017-03-06 Nick Clifton <nickc@redhat.com>
39 * readelf.c (print_gnu_build_attribute_name): Read byte values
40 from the name string as unsigned bytes.
41 (process_notes_at): Use memcpy to copy an unterminated name
44 2017-03-06 Sam Thursfield <sam.thursfield@codethink.co.uk>
46 * configure.ac (AC_CHECK_DECLS): Add asprintf.
47 * config.in: Regenerate.
48 * configure: Regenerate.
50 2017-03-02 Nick Clifton <nickc@redhat.com>
52 * readelf.c (print_gnu_build_attribute_description): Use global
53 symbols for OPEN attributes if at all possible.
54 * objcopy.c (is_merged_note_section): Support build note sections
55 without the SHF_GNU_BUILD_NOTE section flag set.
57 2017-03-02 Jan Kratochvil <jan.kratochvil@redhat.com>
59 * dwarf.c (debug_displays_assert): New static assertion.
61 2017-03-02 Jan Kratochvil <jan.kratochvil@redhat.com>
63 * dwarf.h (enum dwarf_section_display_enum): Add loclists and rnglists.
65 2017-03-01 Nick Clifton <nickc@redhat.com>
67 * readelf.c (get_note_type): Add support for GNU_BUILD_NOTEs.
68 (get_gnu_elf_note_type): Add support for GNU_PROPERTY_NOTEs.
69 (decode_x86_isa): New function.
70 (print_gnu_property_note): New function.
71 (print_gnu_note): Handle GNU_PROPERTY_NOTEs.
72 (print_gnu_build_attribute_description): New function.
73 (print_gnu_build_attribute_name): New function.
74 (process_note): Add support for GNU_BUILD_NOTEs.
75 * objcopy.c (--merge-notes): New command line option.
76 (copy_options): Add merge-notes.
77 (copy_usage): Likewise.
78 (is_merge_note_section): New function.
79 (merge_gnu_build_notes): New function.
80 (copy_object): Merge note sections if asked to do so.
81 (skip_section): Add skip_copy parameter. Add support for skipping
83 (copy_relocations_in_section): Update call to skip_section.
84 (copy_section): Likewise.
85 (copy_main): Add support for merge-notes option.
86 * doc/binutils.texi: Document the new option to objcopy.
87 * NEWS: Mention the new feature.
88 * testsuite/binutils-all/note-2-32.d: New test. Checks note
89 merging on 32-bit targets.
90 * testsuite/binutils-all/note-2-32.s: New test source file.
91 * testsuite/binutils-all/note-2-64.d: New test. Like note-2-32.d
92 but for 64-bit targets.
93 * testsuite/binutils-all/note-2-64.s: New test source file.
94 * testsuite/binutils-all/objcopy.exp: Run the new test.
96 2017-02-28 Peter Bergner <bergner@vnet.ibm.com>
98 * objdump.c (main): Use remove_whitespace_and_extra_commas.
100 2017-02-27 Jan Kratochvil <jan.kratochvil@redhat.com>
102 Fix compilation with GCC 4.4.7.
103 * dwarf.c (display_loclists_list, display_debug_rnglists_list):
104 Initialize begin and end.
106 2017-02-25 Alan Modra <amodra@gmail.com>
108 * testsuite/binutils-all/dw5.S: Replace .string with .asciz.
109 Support hpux .comm variant.
110 * testsuite/binutils-all/readelf.exp: Define HPUX when assembling
111 dw5 test for hppa64-hpux.
113 2017-02-24 Nick Clifton <nickc@redhat.com>
115 * readelf.c (show_name, do_dynamic, do_syms, do_dyn_syms,
116 (do_reloc, do_sections, do_section_groups, do_section_details,
117 (do_segments, do_unwind, do_using_dynamic, do_header, do_dump,
118 (do_version, do_histogram, do_debugging, do_arch, do_notes,
119 (do_archive_index, is_32bit_elf, decompress_dumps): Use
121 (parse_args): Treat the do_* variables as booleans.
122 (print_vma): Return an unsigned int.
123 (print_symbol): Change width parameter to signed int.
124 (is_ia64_vms): Change return type to bfd_boolean.
125 (guess_is_rela): Likewise.
126 (slurp_rela_relocs): Likewise.
127 (slurp_rel_relocs): Likewise.
128 (dump_relocations): Likewise.
129 (process_file_header): Likewise.
130 (get_program_headers): Likewise.
131 (process_program_headers): Likewise.
132 (process_section_headers): Likewise.
133 (process_section_groups): Likewise.
134 (dump_ia64_vms_dynamic_fixups): Likewise.
135 (dump_ia64_vms_dynamic_relocs): Likewise.
136 (process_ia64_vms_dynamic_relocs): Likewise.
137 (process_relocs): Likewise.
138 (dump_ia64_unwind): Likewise.
139 (ia64_process_unwind): Likewise.
140 (dump_hppa_unwind): Likewise.
141 (slurp_hppa_unwind_table): Likewise.
142 (hppa_process_unwind): Likewise.
143 (decode_arm_unwind_bytecode): Likewise.
144 (decode_tic6x_unwind_bytecode): Likewise.
145 (decode_arm_unwind): Likewise.
146 (dump_arm_unwind): Likewise.
147 (arm_process_unwind): Likewise.
148 (process_unwind): Likewise.
149 (get_32bit_dynamic_section): Likewise.
150 (get_64bit_dynamic_section): Likewise.
151 (process_dynamic_section): Likewise.
152 (process_version_sections): Likewise.
153 (process_symbol_table): Likewise.
154 (process_syminfo): Likewise.
155 (apply_relocations): Likewise.
156 (disassemble_section): Likewise.
157 (dump_section_as_strings): Likewise.
158 (dump_section_as_bytes): Likewise.
159 (load_specific_debug_section): Likewise.
160 (load_debug_section): Likewise.
161 (display_debug_section): Likewise.
162 (process_section_contents): Likewise.
163 (process_attributes): Likewise.
164 (process_nds32_specific): Likewise.
165 (process_gnu_liblist): Likewise.
166 (print_core_note): Likewise.
167 (print_gnu_note): Likewise.
168 (print_v850_note): Likewise.
169 (process_netbsd_elf_note): Likewise.
170 (print_stapsdt_note): Likewise.
171 (print_ia64_vms_note): Likewise.
172 (process_note): Likewise.
173 (process_notes_at): Likewise.
174 (process_corefile_note_segments): Likewise.
175 (process_v850_notes): Likewise.
176 (process_note_sections): Likewise.
177 (process_notes): Likewise.
178 (process_arch_specific): Likewise.
179 (get_file_header): Likewise.
180 (process_object): Likewise.
181 (process_archive): Likewise.
182 (process_file): Likewise.
183 (section_subset): Make static.
184 (get_mips_reg_size): Return a signed integer.
185 (process_object): Reverse the logic of the return value.
186 (process_archive): Likewise.
187 (process_file): Likewise.
188 (process_program_headers): Fix snafu - if the program headers are
189 not available then this is not a cause to fail.
190 (process_corefile_note_segments): Likewise.
192 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
194 * readelf.c (get_ver_flags): Tidy the formatting of the string
197 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
199 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Make
201 <SHT_GNU_verneed>: Likewise.
203 2017-02-24 Maciej W. Rozycki <macro@imgtec.com>
205 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Limit
206 the number of entries processed by the section size. Don't
207 break out of the loop if `ent.vd_next' is 0.
209 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
211 * testsuite/binutils-all/dw5.S: New file.
212 * testsuite/binutils-all/dw5.W: New file.
213 * testsuite/binutils-all/readelf.exp (readelf -wiaoRlL): New test.
215 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
217 * dwarf.c (read_and_display_attr_value): Support DW_FORM_data16.
219 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
221 * dwarf.c (display_debug_macro): Support DWARF-5. Rename
224 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
226 * dwarf.c (decode_location_expression): Support DW_OP_implicit_pointer,
227 DW_OP_const_type, DW_OP_regval_type, DW_OP_deref_type, DW_OP_convert
228 and DW_OP_reinterpret.
229 (read_and_display_attr_value): Support DW_AT_call_value,
230 DW_AT_call_data_value, DW_AT_call_target and
231 DW_AT_call_target_clobbered.
233 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
235 * dwarf.c (fetch_indirect_line_string): New function.
236 (abbrev_attr): New field implicit_const.
237 (add_abbrev_attr): New parameter implicit_const.
238 (process_abbrev_section): Support DW_FORM_implicit_const.
239 (decode_location_expression): Support DW_OP_entry_value.
240 (read_and_display_attr_value): Add parameter implicit_const. Support
241 DW_FORM_line_strp and DW_FORM_implicit_const.
242 (read_and_display_attr): Add parameter implicit_const.
243 (process_debug_info): Support line_str and DWARF-5.
244 (read_debug_line_header): Support DWARF-5.
245 (display_formatted_table): New function.
246 (display_debug_lines_raw): New parameter file. Support DWARF-5.
247 (display_debug_lines_decoded): New parameter fileptr. Support DWARF-5.
248 (display_debug_lines): Pass file parameter.
249 (display_debug_macro): Update read_and_display_attr_value caller.
250 (display_debug_abbrev): Support DW_FORM_implicit_const.
251 (display_loclists_list): New function.
252 (display_loc_list): Support .debug_loclists.
253 (display_debug_ranges_list): New function from display_debug_ranges.
254 (display_debug_rnglists_list): New function.
255 (display_debug_ranges): Support .debug_rnglists.
256 (debug_displays): Add .debug_line_str, .debug_loclists and
258 * dwarf.h: Include dwarf2.h
259 (DWARF2_Internal_LineInfo): Add li_offset_size.
260 (DWARF2_Internal_CompUnit): Add cu_unit_type.
261 (enum dwarf_section_display_enum): Add line_str.
262 * readelf.c (process_section_headers): Add rnglists and loclists.
264 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
266 * dwarf.c (display_block): Add parameter delimiter.
267 (decode_location_expression): Update display_block callers.
268 (read_and_display_attr_value): Add parameter delimiter.
269 (read_and_display_attr, display_debug_macro): Update
270 read_and_display_attr_value caller.
272 2017-02-23 Jan Kratochvil <jan.kratochvil@redhat.com>
274 * dwarf.c (display_loc_list): Use dwarf_vma for offset, base_address
276 (display_loc_list_dwo): Use dwarf_vma for offset.
277 (display_debug_loc): Use dwarf_vma for offset, base_address.
278 (struct range_entry, range_entry_compar): Use dwarf_vma for
280 (display_debug_ranges): Use dwarf_vma for ranges_offset, offset and
283 2017-02-23 Nick Clifton <nickc@redhat.com>
285 * readelf.c (display_tag_value): Use an explicit signed type for
287 (display_gnu_attributes): Use an unsigned integer type for
289 (display_power_gnu_attribute): Likewise.
290 (display_s390_gnu_attribute): Likewise.
291 (display_sparc_hwcaps): Likewise.
292 (display_sparc_hwcaps2): Likewise.
293 (display_sparc_gnu_attribute): Likewise.
294 (display_mips_gnu_attribute): Likewise.
295 (display_tic6x_attribute): Likewise.
296 (display_raw_attribute): Likewise.
297 (process_attributes): Likewise.
298 (process_arm_specific): Delete redundant function.
299 (process_power_specific): Likewise.
300 (process_s390_specific): Likewise.
301 (process_sparc_specific): Likewise.
302 (process_tic6x_specific): Likewise.
303 (process_msp430x_specific): Likewise.
304 (display_public_gnu_attributes): New function. Displays known
305 information about an unknown gnu attribute.
306 (display_generic_attribute): New function. Calls
307 display_tag_value for non-nul tags.
308 (process_arch_specific): Call process_attributes even for
309 architectures not known to specifically support gnu attributes.
311 2017-02-22 Jan Kratochvil <jan.kratochvil@redhat.com>
313 * dwarf.c (decode_location_expression): Display also OP.
315 2017-02-22 Maciej W. Rozycki <macro@imgtec.com>
317 * readelf.c (process_version_sections) <SHT_GNU_verdef>: Print a
318 new line between the heading and the first version definition
321 2017-02-20 Nick Clifton <nickc@redhat.com>
324 * dwarf.c (cu_tu_indexes_read): Move into...
325 (load_cu_tu_indexes): ... here. Change the variable into
326 tri-state. Change the function into boolean, returning
327 false if the indicies could not be loaded.
328 (find_cu_tu_set): Return NULL if the indicies could not be
331 2017-02-17 Nick Clifton <nickc@redhat.com>
334 * readelf.c (find_section_in_set): Test for invalid section
337 2017-02-17 Nick Clifton <nickc@redhat.com>
339 * readelf.c (get_section_type_name): Add decoding of GNU section
342 2017-02-15 Nick Clifton <nickc@redhat.com>
344 * MAINTAINERS: (MIPS, MN10300): Move Eric Christopher to Past
347 2017-02-14 Nick Clifton <nickc@redhat.com>
350 * readelf.c (dump_section_as_strings): Reset the start address if
351 no decompression is perfromed.
352 (dump_section_as_bytes): Likewise.
354 2017-02-14 Nick Clifton <nickc@redhat.com>
357 * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or
360 2017-02-14 Nick Clifton <nickc@redhat.com>
363 * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE
365 (parse_number): Exit early if passed an empty string.
367 2017-02-14 Nick Clifton <nickc@redhat.com>
370 * readelf.c (IN_RANGE): New macro. Tests for an address + offset
371 being within a given range.
372 (target_specific_reloc_handling): Use macro to test for underflow
373 as well as overflow of reloc offset.
375 2017-02-13 Nick Clifton <nickc@redhat.com>
378 * nm.c (file_symbol): Add test of string length before testing
381 2017-02-13 Nick Clifton <nickc@redhat.com>
384 * readelf.c (dump_section_as_bytes): Handle the case where
385 uncompress_section_contents returns false.
386 (dump_section_as_bytes, load_specific_debug_section): Likewise.
388 2017-02-13 Nick Clifton <nickc@redhat.com>
391 * readelf.c (get_compression_header): Add size parameter. Check
392 size against sizeof compression header before attempting to
394 (process_section_headers): Pass size to get_compression_header.
395 (dump_section_as_strings): Likewise.
396 (dump_section_as_bytes): Likewise.
397 (load_specific_debug_section): Likewise.
399 2017-02-13 Nick Clifton <nickc@redhat.com>
402 * readelf.c (process_version_sections): Include size of auxillary
403 version information when checking for buffer overflow.
405 2017-02-13 Nick Clifton <nickc@redhat.com>
408 * readelf.c (process_section_contents): Fix off by one error
409 reporting un-dumped sections.
411 2017-02-13 Nick Clifton <nickc@redhat.com>
414 * readelf.c (target_specific_reloc_handling): Add num_syms
415 parameter. Check for symbol table overflow before accessing
416 symbol value. If reloc pointer is NULL, discard all saved state.
417 (apply_relocations): Pass num_syms to target_specific_reloc_handling.
418 Call target_specific_reloc_handling with a NULL reloc pointer
419 after processing all of the relocs.
421 2017-02-13 Nick Clifton <nickc@redhat.com>
424 * readelf.c (target_specific_reloc_handling): Add end parameter.
425 Check for buffer overflow before writing relocated values.
426 (apply_relocations): Pass end to target_specific_reloc_handling.
428 2017-01-27 Dilyan Palauzov <dilyan.palauzov@aegee.org>
429 Nick Clifton <nickc@redhat.com>
432 * doc/binutils.texi (ar): Extend documentation of the --plugin
433 option. Include a description of where the plugins should be
437 2017-01-23 Nick Clifton <nickc@redhat.com>
439 * MAINTAINERS: Add Bernd to Past Maintainers section.
440 (SCORE): Remove Mei Ligang as maintainer. Add to Past Maintainers
443 2017-01-23 Bernd Schmidt <bschmidt@redhat.com>
445 * MAINTAINERS (BFIN): Remove myself as Blackfin maintainer.
447 2017-01-20 Andrew Burgess <andrew.burgess@embecosm.com>
449 * objdump.c (dump_section_header): Extract max section name length
450 from data parameter, use this when formatting output.
451 (find_longest_section_name): New function.
452 (dump_headers): Calculate longest section name when in wide mode,
453 reformat to unify printing of header line.
455 2017-01-18 Bernhard Rosenkranzer <bero@lindev.ch>
458 * arlex.l: Support processing with flex 2.6.3.
459 * deflex.l: Likewise.
461 2017-01-17 Dmitry Timoshkov <dmitry@baikal.ru>
463 * resbin.c: Optional dialog control data immediately follows
464 the control description without alignment.
465 * testsuite/binutils-all/windres/controldata.rc: New test.
467 * testsuite/binutils-all/windres/controldata.rsd: New test.
469 2017-01-12 Nick Clifton <nickc@redhat.com>
472 * NEWS: Mention the new feature.
473 * testsuite/binutils-all/objdump.exp (test_build_id_debuglink):
474 New proc to test the location of separate debug info files using
477 2017-01-10 Nick Clifton <nickc@redhat.com>
480 * stabs.c (parse_stab_members): Fix thinko checking for g++
481 version 1 stabs information.
483 2017-01-09 Nick Clifton <nickc@redhat.com>
485 * objdump.c (display_file): Add new parameter 'last_file'. If
486 last_file is true, do not call bfd_close at the end of the
488 (main): Set the value of the last_file parameter when calling
491 2017-01-09 Alan Modra <amodra@gmail.com>
493 * readelf.c (process_section_headers): Correct .rel.dyn/.rela.dyn
496 2017-01-06 Nick Clifton <nickc@redhat.com>
498 * MAINTAINERS: Move Paul Brook to the Past Maintainers section.
500 2017-01-04 Dilan Palauzov <dilyan.palauzov@aegee.org>
503 * syslex.l (option): Add noyywrap
506 2017-01-02 Alan Modra <amodra@gmail.com>
508 Update year range in copyright notice of all files.
510 For older changes see ChangeLog-2016
512 Copyright (C) 2017 Free Software Foundation, Inc.
514 Copying and distribution of this file, with or without modification,
515 are permitted in any medium without royalty provided the copyright
516 notice and this notice are preserved.
522 version-control: never